| 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 <iosfwd> | 8 #include <iosfwd> | 
| 9 | 9 | 
| 10 #include "src/allocation.h" | 10 #include "src/allocation.h" | 
| (...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 703   SHARED_FUNCTION_INFO_TYPE, | 703   SHARED_FUNCTION_INFO_TYPE, | 
| 704   CELL_TYPE, | 704   CELL_TYPE, | 
| 705   WEAK_CELL_TYPE, | 705   WEAK_CELL_TYPE, | 
| 706   PROPERTY_CELL_TYPE, | 706   PROPERTY_CELL_TYPE, | 
| 707   PROTOTYPE_INFO_TYPE, | 707   PROTOTYPE_INFO_TYPE, | 
| 708   SLOPPY_BLOCK_WITH_EVAL_CONTEXT_EXTENSION_TYPE, | 708   SLOPPY_BLOCK_WITH_EVAL_CONTEXT_EXTENSION_TYPE, | 
| 709 | 709 | 
| 710   // All the following types are subtypes of JSReceiver, which corresponds to | 710   // All the following types are subtypes of JSReceiver, which corresponds to | 
| 711   // objects in the JS sense. The first and the last type in this range are | 711   // objects in the JS sense. The first and the last type in this range are | 
| 712   // the two forms of function. This organization enables using the same | 712   // the two forms of function. This organization enables using the same | 
| 713   // compares for checking the JS_RECEIVER/SPEC_OBJECT range and the | 713   // compares for checking the JS_RECEIVER and the NONCALLABLE_JS_OBJECT range. | 
| 714   // NONCALLABLE_JS_OBJECT range. |  | 
| 715   JS_FUNCTION_PROXY_TYPE,  // FIRST_JS_RECEIVER_TYPE, FIRST_JS_PROXY_TYPE | 714   JS_FUNCTION_PROXY_TYPE,  // FIRST_JS_RECEIVER_TYPE, FIRST_JS_PROXY_TYPE | 
| 716   JS_PROXY_TYPE,           // LAST_JS_PROXY_TYPE | 715   JS_PROXY_TYPE,           // LAST_JS_PROXY_TYPE | 
| 717   JS_VALUE_TYPE,           // FIRST_JS_OBJECT_TYPE | 716   JS_VALUE_TYPE,           // FIRST_JS_OBJECT_TYPE | 
| 718   JS_MESSAGE_OBJECT_TYPE, | 717   JS_MESSAGE_OBJECT_TYPE, | 
| 719   JS_DATE_TYPE, | 718   JS_DATE_TYPE, | 
| 720   JS_OBJECT_TYPE, | 719   JS_OBJECT_TYPE, | 
| 721   JS_CONTEXT_EXTENSION_OBJECT_TYPE, | 720   JS_CONTEXT_EXTENSION_OBJECT_TYPE, | 
| 722   JS_GENERATOR_OBJECT_TYPE, | 721   JS_GENERATOR_OBJECT_TYPE, | 
| 723   JS_MODULE_TYPE, | 722   JS_MODULE_TYPE, | 
| 724   JS_GLOBAL_OBJECT_TYPE, | 723   JS_GLOBAL_OBJECT_TYPE, | 
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 759   // external class names, where proxies are treated as either ordinary objects, | 758   // external class names, where proxies are treated as either ordinary objects, | 
| 760   // or functions. | 759   // or functions. | 
| 761   FIRST_JS_RECEIVER_TYPE = JS_FUNCTION_PROXY_TYPE, | 760   FIRST_JS_RECEIVER_TYPE = JS_FUNCTION_PROXY_TYPE, | 
| 762   LAST_JS_RECEIVER_TYPE = LAST_TYPE, | 761   LAST_JS_RECEIVER_TYPE = LAST_TYPE, | 
| 763   // Boundaries for testing the types represented as JSObject | 762   // Boundaries for testing the types represented as JSObject | 
| 764   FIRST_JS_OBJECT_TYPE = JS_VALUE_TYPE, | 763   FIRST_JS_OBJECT_TYPE = JS_VALUE_TYPE, | 
| 765   LAST_JS_OBJECT_TYPE = LAST_TYPE, | 764   LAST_JS_OBJECT_TYPE = LAST_TYPE, | 
| 766   // Boundaries for testing the types represented as JSProxy | 765   // Boundaries for testing the types represented as JSProxy | 
| 767   FIRST_JS_PROXY_TYPE = JS_FUNCTION_PROXY_TYPE, | 766   FIRST_JS_PROXY_TYPE = JS_FUNCTION_PROXY_TYPE, | 
| 768   LAST_JS_PROXY_TYPE = JS_PROXY_TYPE, | 767   LAST_JS_PROXY_TYPE = JS_PROXY_TYPE, | 
| 769   // Boundaries for testing whether the type is a JavaScript object. | 768   // | 
| 770   FIRST_SPEC_OBJECT_TYPE = FIRST_JS_RECEIVER_TYPE, |  | 
| 771   LAST_SPEC_OBJECT_TYPE = LAST_JS_RECEIVER_TYPE, |  | 
| 772   // Boundaries for testing the types for which typeof is "object". |  | 
| 773   FIRST_NONCALLABLE_SPEC_OBJECT_TYPE = JS_PROXY_TYPE, | 769   FIRST_NONCALLABLE_SPEC_OBJECT_TYPE = JS_PROXY_TYPE, | 
| 774   LAST_NONCALLABLE_SPEC_OBJECT_TYPE = JS_REGEXP_TYPE, | 770   LAST_NONCALLABLE_SPEC_OBJECT_TYPE = JS_REGEXP_TYPE, | 
| 775   // Note that the types for which typeof is "function" are not continuous. | 771   // Note that the types for which typeof is "function" are not continuous. | 
| 776   // Define this so that we can put assertions on discrete checks. | 772   // Define this so that we can put assertions on discrete checks. | 
| 777   NUM_OF_CALLABLE_SPEC_OBJECT_TYPES = 2 | 773   NUM_OF_CALLABLE_SPEC_OBJECT_TYPES = 2 | 
| 778 }; | 774 }; | 
| 779 | 775 | 
| 780 STATIC_ASSERT(JS_OBJECT_TYPE == Internals::kJSObjectType); | 776 STATIC_ASSERT(JS_OBJECT_TYPE == Internals::kJSObjectType); | 
| 781 STATIC_ASSERT(FIRST_NONSTRING_TYPE == Internals::kFirstNonstringType); | 777 STATIC_ASSERT(FIRST_NONSTRING_TYPE == Internals::kFirstNonstringType); | 
| 782 STATIC_ASSERT(ODDBALL_TYPE == Internals::kOddballType); | 778 STATIC_ASSERT(ODDBALL_TYPE == Internals::kOddballType); | 
| (...skipping 9950 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 10733     } | 10729     } | 
| 10734     return value; | 10730     return value; | 
| 10735   } | 10731   } | 
| 10736 }; | 10732 }; | 
| 10737 | 10733 | 
| 10738 | 10734 | 
| 10739 }  // NOLINT, false-positive due to second-order macros. | 10735 }  // NOLINT, false-positive due to second-order macros. | 
| 10740 }  // NOLINT, false-positive due to second-order macros. | 10736 }  // NOLINT, false-positive due to second-order macros. | 
| 10741 | 10737 | 
| 10742 #endif  // V8_OBJECTS_H_ | 10738 #endif  // V8_OBJECTS_H_ | 
| OLD | NEW | 
|---|