OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/assert-scope.h" | 10 #include "src/assert-scope.h" |
(...skipping 2276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2287 inline int GetHeaderSize(); | 2287 inline int GetHeaderSize(); |
2288 | 2288 |
2289 static inline int GetInternalFieldCount(Map* map); | 2289 static inline int GetInternalFieldCount(Map* map); |
2290 inline int GetInternalFieldCount(); | 2290 inline int GetInternalFieldCount(); |
2291 inline int GetInternalFieldOffset(int index); | 2291 inline int GetInternalFieldOffset(int index); |
2292 inline Object* GetInternalField(int index); | 2292 inline Object* GetInternalField(int index); |
2293 inline void SetInternalField(int index, Object* value); | 2293 inline void SetInternalField(int index, Object* value); |
2294 inline void SetInternalField(int index, Smi* value); | 2294 inline void SetInternalField(int index, Smi* value); |
2295 bool WasConstructedFromApiFunction(); | 2295 bool WasConstructedFromApiFunction(); |
2296 | 2296 |
2297 void CollectOwnPropertyNames(KeyAccumulator* keys, | |
2298 PropertyFilter filter = ALL_PROPERTIES); | |
2299 | |
2300 static void CollectOwnElementKeys(Handle<JSObject> object, | |
2301 KeyAccumulator* keys, | |
2302 PropertyFilter filter); | |
2303 | |
2304 static Handle<FixedArray> GetEnumPropertyKeys(Handle<JSObject> object); | |
2305 | |
2306 static Handle<FixedArray> GetFastEnumPropertyKeys(Isolate* isolate, | |
2307 Handle<JSObject> object); | |
2308 | |
2309 // Returns a new map with all transitions dropped from the object's current | 2297 // Returns a new map with all transitions dropped from the object's current |
2310 // map and the ElementsKind set. | 2298 // map and the ElementsKind set. |
2311 static Handle<Map> GetElementsTransitionMap(Handle<JSObject> object, | 2299 static Handle<Map> GetElementsTransitionMap(Handle<JSObject> object, |
2312 ElementsKind to_kind); | 2300 ElementsKind to_kind); |
2313 static void TransitionElementsKind(Handle<JSObject> object, | 2301 static void TransitionElementsKind(Handle<JSObject> object, |
2314 ElementsKind to_kind); | 2302 ElementsKind to_kind); |
2315 | 2303 |
2316 // Always use this to migrate an object to a new map. | 2304 // Always use this to migrate an object to a new map. |
2317 // |expected_additional_properties| is only used for fast-to-slow transitions | 2305 // |expected_additional_properties| is only used for fast-to-slow transitions |
2318 // and ignored otherwise. | 2306 // and ignored otherwise. |
(...skipping 8450 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10769 } | 10757 } |
10770 return value; | 10758 return value; |
10771 } | 10759 } |
10772 }; | 10760 }; |
10773 | 10761 |
10774 | 10762 |
10775 } // NOLINT, false-positive due to second-order macros. | 10763 } // NOLINT, false-positive due to second-order macros. |
10776 } // NOLINT, false-positive due to second-order macros. | 10764 } // NOLINT, false-positive due to second-order macros. |
10777 | 10765 |
10778 #endif // V8_OBJECTS_H_ | 10766 #endif // V8_OBJECTS_H_ |
OLD | NEW |