| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
| 6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
| 7 | 7 |
| 8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/assert-scope.h" | 9 #include "src/assert-scope.h" |
| 10 #include "src/builtins.h" | 10 #include "src/builtins.h" |
| (...skipping 2613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2624 }; | 2624 }; |
| 2625 | 2625 |
| 2626 Context* GetCreationContext(); | 2626 Context* GetCreationContext(); |
| 2627 | 2627 |
| 2628 // Enqueue change record for Object.observe. May cause GC. | 2628 // Enqueue change record for Object.observe. May cause GC. |
| 2629 static void EnqueueChangeRecord(Handle<JSObject> object, | 2629 static void EnqueueChangeRecord(Handle<JSObject> object, |
| 2630 const char* type, | 2630 const char* type, |
| 2631 Handle<Name> name, | 2631 Handle<Name> name, |
| 2632 Handle<Object> old_value); | 2632 Handle<Object> old_value); |
| 2633 | 2633 |
| 2634 static void MigrateToNewProperty(Handle<JSObject> object, |
| 2635 Handle<Map> transition, |
| 2636 Handle<Object> value); |
| 2637 |
| 2634 private: | 2638 private: |
| 2635 friend class DictionaryElementsAccessor; | 2639 friend class DictionaryElementsAccessor; |
| 2636 friend class JSReceiver; | 2640 friend class JSReceiver; |
| 2637 friend class Object; | 2641 friend class Object; |
| 2638 | 2642 |
| 2639 static void UpdateAllocationSite(Handle<JSObject> object, | 2643 static void UpdateAllocationSite(Handle<JSObject> object, |
| 2640 ElementsKind to_kind); | 2644 ElementsKind to_kind); |
| 2641 | 2645 |
| 2642 // Used from Object::GetProperty(). | 2646 // Used from Object::GetProperty(). |
| 2643 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithFailedAccessCheck( | 2647 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithFailedAccessCheck( |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2751 | 2755 |
| 2752 // Add a property to a fast-case object. | 2756 // Add a property to a fast-case object. |
| 2753 static void AddFastProperty(Handle<JSObject> object, | 2757 static void AddFastProperty(Handle<JSObject> object, |
| 2754 Handle<Name> name, | 2758 Handle<Name> name, |
| 2755 Handle<Object> value, | 2759 Handle<Object> value, |
| 2756 PropertyAttributes attributes, | 2760 PropertyAttributes attributes, |
| 2757 StoreFromKeyed store_mode, | 2761 StoreFromKeyed store_mode, |
| 2758 ValueType value_type, | 2762 ValueType value_type, |
| 2759 TransitionFlag flag); | 2763 TransitionFlag flag); |
| 2760 | 2764 |
| 2761 static void MigrateToNewProperty(Handle<JSObject> object, | |
| 2762 Handle<Map> transition, | |
| 2763 Handle<Object> value); | |
| 2764 | |
| 2765 // Add a property to a slow-case object. | 2765 // Add a property to a slow-case object. |
| 2766 static void AddSlowProperty(Handle<JSObject> object, | 2766 static void AddSlowProperty(Handle<JSObject> object, |
| 2767 Handle<Name> name, | 2767 Handle<Name> name, |
| 2768 Handle<Object> value, | 2768 Handle<Object> value, |
| 2769 PropertyAttributes attributes); | 2769 PropertyAttributes attributes); |
| 2770 | 2770 |
| 2771 MUST_USE_RESULT static MaybeHandle<Object> DeleteProperty( | 2771 MUST_USE_RESULT static MaybeHandle<Object> DeleteProperty( |
| 2772 Handle<JSObject> object, | 2772 Handle<JSObject> object, |
| 2773 Handle<Name> name, | 2773 Handle<Name> name, |
| 2774 DeleteMode mode); | 2774 DeleteMode mode); |
| (...skipping 8393 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11168 } else { | 11168 } else { |
| 11169 value &= ~(1 << bit_position); | 11169 value &= ~(1 << bit_position); |
| 11170 } | 11170 } |
| 11171 return value; | 11171 return value; |
| 11172 } | 11172 } |
| 11173 }; | 11173 }; |
| 11174 | 11174 |
| 11175 } } // namespace v8::internal | 11175 } } // namespace v8::internal |
| 11176 | 11176 |
| 11177 #endif // V8_OBJECTS_H_ | 11177 #endif // V8_OBJECTS_H_ |
| OLD | NEW |