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 2362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2373 // Called the first time an object is observed with ES7 Object.observe. | 2373 // Called the first time an object is observed with ES7 Object.observe. |
2374 static void SetObserved(Handle<JSObject> object); | 2374 static void SetObserved(Handle<JSObject> object); |
2375 | 2375 |
2376 // Copy object. | 2376 // Copy object. |
2377 enum DeepCopyHints { kNoHints = 0, kObjectIsShallow = 1 }; | 2377 enum DeepCopyHints { kNoHints = 0, kObjectIsShallow = 1 }; |
2378 | 2378 |
2379 MUST_USE_RESULT static MaybeHandle<JSObject> DeepCopy( | 2379 MUST_USE_RESULT static MaybeHandle<JSObject> DeepCopy( |
2380 Handle<JSObject> object, | 2380 Handle<JSObject> object, |
2381 AllocationSiteUsageContext* site_context, | 2381 AllocationSiteUsageContext* site_context, |
2382 DeepCopyHints hints = kNoHints); | 2382 DeepCopyHints hints = kNoHints); |
2383 // Deep copies given object with special handling for JSFunctions which | |
2384 // 1) must be Api functions and 2) are not copied but left as is. | |
2385 MUST_USE_RESULT static MaybeHandle<JSObject> DeepCopyApiBoilerplate( | |
2386 Handle<JSObject> object); | |
2387 MUST_USE_RESULT static MaybeHandle<JSObject> DeepWalk( | 2383 MUST_USE_RESULT static MaybeHandle<JSObject> DeepWalk( |
2388 Handle<JSObject> object, | 2384 Handle<JSObject> object, |
2389 AllocationSiteCreationContext* site_context); | 2385 AllocationSiteCreationContext* site_context); |
2390 | 2386 |
2391 DECLARE_CAST(JSObject) | 2387 DECLARE_CAST(JSObject) |
2392 | 2388 |
2393 // Dispatched behavior. | 2389 // Dispatched behavior. |
2394 void JSObjectShortPrint(StringStream* accumulator); | 2390 void JSObjectShortPrint(StringStream* accumulator); |
2395 DECLARE_PRINTER(JSObject) | 2391 DECLARE_PRINTER(JSObject) |
2396 DECLARE_VERIFIER(JSObject) | 2392 DECLARE_VERIFIER(JSObject) |
(...skipping 8482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10879 } | 10875 } |
10880 return value; | 10876 return value; |
10881 } | 10877 } |
10882 }; | 10878 }; |
10883 | 10879 |
10884 | 10880 |
10885 } // NOLINT, false-positive due to second-order macros. | 10881 } // NOLINT, false-positive due to second-order macros. |
10886 } // NOLINT, false-positive due to second-order macros. | 10882 } // NOLINT, false-positive due to second-order macros. |
10887 | 10883 |
10888 #endif // V8_OBJECTS_H_ | 10884 #endif // V8_OBJECTS_H_ |
OLD | NEW |