OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/arguments.h" | 7 #include "src/arguments.h" |
8 #include "src/bootstrapper.h" | 8 #include "src/bootstrapper.h" |
9 #include "src/debug.h" | 9 #include "src/debug.h" |
10 #include "src/runtime/runtime.h" | 10 #include "src/runtime/runtime.h" |
(...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
355 if (obj->map()->is_observed()) { | 355 if (obj->map()->is_observed()) { |
356 Handle<Object> old_value = | 356 Handle<Object> old_value = |
357 Object::GetPrototypeSkipHiddenPrototypes(isolate, obj); | 357 Object::GetPrototypeSkipHiddenPrototypes(isolate, obj); |
358 Handle<Object> result; | 358 Handle<Object> result; |
359 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( | 359 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
360 isolate, result, JSObject::SetPrototype(obj, prototype, true)); | 360 isolate, result, JSObject::SetPrototype(obj, prototype, true)); |
361 | 361 |
362 Handle<Object> new_value = | 362 Handle<Object> new_value = |
363 Object::GetPrototypeSkipHiddenPrototypes(isolate, obj); | 363 Object::GetPrototypeSkipHiddenPrototypes(isolate, obj); |
364 if (!new_value->SameValue(*old_value)) { | 364 if (!new_value->SameValue(*old_value)) { |
365 JSObject::EnqueueChangeRecord( | 365 RETURN_FAILURE_ON_EXCEPTION( |
366 obj, "setPrototype", isolate->factory()->proto_string(), old_value); | 366 isolate, JSObject::EnqueueChangeRecord( |
| 367 obj, "setPrototype", isolate->factory()->proto_string(), |
| 368 old_value)); |
367 } | 369 } |
368 return *result; | 370 return *result; |
369 } | 371 } |
370 Handle<Object> result; | 372 Handle<Object> result; |
371 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( | 373 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
372 isolate, result, JSObject::SetPrototype(obj, prototype, true)); | 374 isolate, result, JSObject::SetPrototype(obj, prototype, true)); |
373 return *result; | 375 return *result; |
374 } | 376 } |
375 | 377 |
376 | 378 |
(...skipping 1256 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1633 | 1635 |
1634 RUNTIME_FUNCTION(RuntimeReference_ClassOf) { | 1636 RUNTIME_FUNCTION(RuntimeReference_ClassOf) { |
1635 SealHandleScope shs(isolate); | 1637 SealHandleScope shs(isolate); |
1636 DCHECK(args.length() == 1); | 1638 DCHECK(args.length() == 1); |
1637 CONVERT_ARG_CHECKED(Object, obj, 0); | 1639 CONVERT_ARG_CHECKED(Object, obj, 0); |
1638 if (!obj->IsJSReceiver()) return isolate->heap()->null_value(); | 1640 if (!obj->IsJSReceiver()) return isolate->heap()->null_value(); |
1639 return JSReceiver::cast(obj)->class_name(); | 1641 return JSReceiver::cast(obj)->class_name(); |
1640 } | 1642 } |
1641 } | 1643 } |
1642 } // namespace v8::internal | 1644 } // namespace v8::internal |
OLD | NEW |