OLD | NEW |
---|---|
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 843 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
854 inline void set_##name(bool value); \ | 854 inline void set_##name(bool value); \ |
855 | 855 |
856 | 856 |
857 #define DECL_ACCESSORS(name, type) \ | 857 #define DECL_ACCESSORS(name, type) \ |
858 inline type* name(); \ | 858 inline type* name(); \ |
859 inline void set_##name(type* value, \ | 859 inline void set_##name(type* value, \ |
860 WriteBarrierMode mode = UPDATE_WRITE_BARRIER); \ | 860 WriteBarrierMode mode = UPDATE_WRITE_BARRIER); \ |
861 | 861 |
862 class AccessorPair; | 862 class AccessorPair; |
863 class AllocationSite; | 863 class AllocationSite; |
864 class AllocationSiteContext; | 864 class AllocationSiteCreationContext; |
865 class AllocationSiteUsageContext; | |
865 class DictionaryElementsAccessor; | 866 class DictionaryElementsAccessor; |
866 class ElementsAccessor; | 867 class ElementsAccessor; |
867 class Failure; | 868 class Failure; |
868 class FixedArrayBase; | 869 class FixedArrayBase; |
869 class ObjectVisitor; | 870 class ObjectVisitor; |
870 class StringStream; | 871 class StringStream; |
871 class Type; | 872 class Type; |
872 | 873 |
873 | 874 |
874 // A template-ized version of the IsXXX functions. | 875 // A template-ized version of the IsXXX functions. |
(...skipping 1639 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2514 // Disalow further properties to be added to the object. | 2515 // Disalow further properties to be added to the object. |
2515 static Handle<Object> PreventExtensions(Handle<JSObject> object); | 2516 static Handle<Object> PreventExtensions(Handle<JSObject> object); |
2516 | 2517 |
2517 // ES5 Object.freeze | 2518 // ES5 Object.freeze |
2518 static Handle<Object> Freeze(Handle<JSObject> object); | 2519 static Handle<Object> Freeze(Handle<JSObject> object); |
2519 | 2520 |
2520 // Called the first time an object is observed with ES7 Object.observe. | 2521 // Called the first time an object is observed with ES7 Object.observe. |
2521 static void SetObserved(Handle<JSObject> object); | 2522 static void SetObserved(Handle<JSObject> object); |
2522 | 2523 |
2523 // Copy object. | 2524 // Copy object. |
2524 static Handle<JSObject> Copy(Handle<JSObject> object, | |
2525 Handle<AllocationSite> site); | |
2526 static Handle<JSObject> Copy(Handle<JSObject> object); | 2525 static Handle<JSObject> Copy(Handle<JSObject> object); |
2527 static Handle<JSObject> DeepCopy(Handle<JSObject> object, | 2526 static Handle<JSObject> DeepCopy(Handle<JSObject> object, |
2528 AllocationSiteContext* site_context); | 2527 AllocationSiteUsageContext* site_context, |
2528 bool hint_object_is_shallow_array = false); | |
Michael Starzinger
2013/11/22 20:07:16
Yay, more magic boolean parameters. :/
mvstanton
2013/11/25 11:51:50
Good point, I replaced it with an enum DeepCopyHin
| |
2529 static Handle<JSObject> DeepWalk(Handle<JSObject> object, | 2529 static Handle<JSObject> DeepWalk(Handle<JSObject> object, |
2530 AllocationSiteContext* site_context); | 2530 AllocationSiteCreationContext* site_context); |
2531 | 2531 |
2532 // Casting. | 2532 // Casting. |
2533 static inline JSObject* cast(Object* obj); | 2533 static inline JSObject* cast(Object* obj); |
2534 | 2534 |
2535 // Dispatched behavior. | 2535 // Dispatched behavior. |
2536 void JSObjectShortPrint(StringStream* accumulator); | 2536 void JSObjectShortPrint(StringStream* accumulator); |
2537 DECLARE_PRINTER(JSObject) | 2537 DECLARE_PRINTER(JSObject) |
2538 DECLARE_VERIFIER(JSObject) | 2538 DECLARE_VERIFIER(JSObject) |
2539 #ifdef OBJECT_PRINT | 2539 #ifdef OBJECT_PRINT |
2540 void PrintProperties(FILE* out = stdout); | 2540 void PrintProperties(FILE* out = stdout); |
(...skipping 8025 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
10566 } else { | 10566 } else { |
10567 value &= ~(1 << bit_position); | 10567 value &= ~(1 << bit_position); |
10568 } | 10568 } |
10569 return value; | 10569 return value; |
10570 } | 10570 } |
10571 }; | 10571 }; |
10572 | 10572 |
10573 } } // namespace v8::internal | 10573 } } // namespace v8::internal |
10574 | 10574 |
10575 #endif // V8_OBJECTS_H_ | 10575 #endif // V8_OBJECTS_H_ |
OLD | NEW |