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 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 2192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2203 static void ReoptimizeIfPrototype(Handle<JSObject> object); | 2203 static void ReoptimizeIfPrototype(Handle<JSObject> object); |
2204 static void MakePrototypesFast(Handle<Object> receiver, | 2204 static void MakePrototypesFast(Handle<Object> receiver, |
2205 WhereToStart where_to_start, Isolate* isolate); | 2205 WhereToStart where_to_start, Isolate* isolate); |
2206 static void LazyRegisterPrototypeUser(Handle<Map> user, Isolate* isolate); | 2206 static void LazyRegisterPrototypeUser(Handle<Map> user, Isolate* isolate); |
2207 static void UpdatePrototypeUserRegistration(Handle<Map> old_map, | 2207 static void UpdatePrototypeUserRegistration(Handle<Map> old_map, |
2208 Handle<Map> new_map, | 2208 Handle<Map> new_map, |
2209 Isolate* isolate); | 2209 Isolate* isolate); |
2210 static bool UnregisterPrototypeUser(Handle<Map> user, Isolate* isolate); | 2210 static bool UnregisterPrototypeUser(Handle<Map> user, Isolate* isolate); |
2211 static void InvalidatePrototypeChains(Map* map); | 2211 static void InvalidatePrototypeChains(Map* map); |
2212 | 2212 |
2213 // Utility used by many Array builtins and runtime functions | |
2214 static inline bool PrototypeHasNoElements(Isolate* isolate, JSObject* object); | |
2215 | |
2216 // Alternative implementation of WeakFixedArray::NullCallback. | 2213 // Alternative implementation of WeakFixedArray::NullCallback. |
2217 class PrototypeRegistryCompactionCallback { | 2214 class PrototypeRegistryCompactionCallback { |
2218 public: | 2215 public: |
2219 static void Callback(Object* value, int old_index, int new_index); | 2216 static void Callback(Object* value, int old_index, int new_index); |
2220 }; | 2217 }; |
2221 | 2218 |
2222 // Retrieve interceptors. | 2219 // Retrieve interceptors. |
2223 inline InterceptorInfo* GetNamedInterceptor(); | 2220 inline InterceptorInfo* GetNamedInterceptor(); |
2224 inline InterceptorInfo* GetIndexedInterceptor(); | 2221 inline InterceptorInfo* GetIndexedInterceptor(); |
2225 | 2222 |
(...skipping 8828 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11054 } | 11051 } |
11055 return value; | 11052 return value; |
11056 } | 11053 } |
11057 }; | 11054 }; |
11058 | 11055 |
11059 | 11056 |
11060 } // NOLINT, false-positive due to second-order macros. | 11057 } // NOLINT, false-positive due to second-order macros. |
11061 } // NOLINT, false-positive due to second-order macros. | 11058 } // NOLINT, false-positive due to second-order macros. |
11062 | 11059 |
11063 #endif // V8_OBJECTS_H_ | 11060 #endif // V8_OBJECTS_H_ |
OLD | NEW |