OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/objects.h" | 5 #include "src/objects.h" |
6 | 6 |
7 #include <cmath> | 7 #include <cmath> |
8 #include <iomanip> | 8 #include <iomanip> |
9 #include <sstream> | 9 #include <sstream> |
10 | 10 |
(...skipping 4651 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4662 return Nothing<bool>(); | 4662 return Nothing<bool>(); |
4663 } | 4663 } |
4664 // 9b ii. Let extensibleTarget be ? IsExtensible(target). | 4664 // 9b ii. Let extensibleTarget be ? IsExtensible(target). |
4665 Maybe<bool> maybe_extensible = JSReceiver::IsExtensible(target); | 4665 Maybe<bool> maybe_extensible = JSReceiver::IsExtensible(target); |
4666 if (maybe_extensible.IsNothing()) return maybe_extensible; | 4666 if (maybe_extensible.IsNothing()) return maybe_extensible; |
4667 bool extensible_target = maybe_extensible.FromJust(); | 4667 bool extensible_target = maybe_extensible.FromJust(); |
4668 // 9b iii. If extensibleTarget is false, throw a TypeError exception. | 4668 // 9b iii. If extensibleTarget is false, throw a TypeError exception. |
4669 if (!extensible_target) { | 4669 if (!extensible_target) { |
4670 isolate->Throw(*isolate->factory()->NewTypeError( | 4670 isolate->Throw(*isolate->factory()->NewTypeError( |
4671 MessageTemplate::kProxyTargetNotExtensible)); | 4671 MessageTemplate::kProxyTargetNotExtensible)); |
| 4672 return Nothing<bool>(); |
4672 } | 4673 } |
4673 } | 4674 } |
4674 } | 4675 } |
4675 // 10. Return booleanTrapResult. | 4676 // 10. Return booleanTrapResult. |
4676 return Just(boolean_trap_result); | 4677 return Just(boolean_trap_result); |
4677 } | 4678 } |
4678 | 4679 |
4679 | 4680 |
4680 Maybe<bool> JSProxy::SetProperty(Handle<JSProxy> proxy, Handle<Name> name, | 4681 Maybe<bool> JSProxy::SetProperty(Handle<JSProxy> proxy, Handle<Name> name, |
4681 Handle<Object> value, Handle<Object> receiver, | 4682 Handle<Object> value, Handle<Object> receiver, |
(...skipping 14452 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
19134 if (cell->value() != *new_value) { | 19135 if (cell->value() != *new_value) { |
19135 cell->set_value(*new_value); | 19136 cell->set_value(*new_value); |
19136 Isolate* isolate = cell->GetIsolate(); | 19137 Isolate* isolate = cell->GetIsolate(); |
19137 cell->dependent_code()->DeoptimizeDependentCodeGroup( | 19138 cell->dependent_code()->DeoptimizeDependentCodeGroup( |
19138 isolate, DependentCode::kPropertyCellChangedGroup); | 19139 isolate, DependentCode::kPropertyCellChangedGroup); |
19139 } | 19140 } |
19140 } | 19141 } |
19141 | 19142 |
19142 } // namespace internal | 19143 } // namespace internal |
19143 } // namespace v8 | 19144 } // namespace v8 |
OLD | NEW |