| 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 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 // - JSValue | 73 // - JSValue |
| 74 // - JSDate | 74 // - JSDate |
| 75 // - JSMessageObject | 75 // - JSMessageObject |
| 76 // - JSModuleNamespace | 76 // - JSModuleNamespace |
| 77 // - JSProxy | 77 // - JSProxy |
| 78 // - FixedArrayBase | 78 // - FixedArrayBase |
| 79 // - ByteArray | 79 // - ByteArray |
| 80 // - BytecodeArray | 80 // - BytecodeArray |
| 81 // - FixedArray | 81 // - FixedArray |
| 82 // - DescriptorArray | 82 // - DescriptorArray |
| 83 // - DictionarySchema |
| 83 // - FrameArray | 84 // - FrameArray |
| 84 // - HashTable | 85 // - HashTable |
| 85 // - Dictionary | 86 // - Dictionary |
| 86 // - StringTable | 87 // - StringTable |
| 87 // - StringSet | 88 // - StringSet |
| 88 // - CompilationCacheTable | 89 // - CompilationCacheTable |
| 89 // - CodeCacheHashTable | 90 // - CodeCacheHashTable |
| 90 // - MapCache | 91 // - MapCache |
| 91 // - OrderedHashTable | 92 // - OrderedHashTable |
| 92 // - OrderedHashSet | 93 // - OrderedHashSet |
| (...skipping 907 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1000 V(BytecodeArray) \ | 1001 V(BytecodeArray) \ |
| 1001 V(FreeSpace) \ | 1002 V(FreeSpace) \ |
| 1002 V(JSReceiver) \ | 1003 V(JSReceiver) \ |
| 1003 V(JSObject) \ | 1004 V(JSObject) \ |
| 1004 V(JSArgumentsObject) \ | 1005 V(JSArgumentsObject) \ |
| 1005 V(JSContextExtensionObject) \ | 1006 V(JSContextExtensionObject) \ |
| 1006 V(JSGeneratorObject) \ | 1007 V(JSGeneratorObject) \ |
| 1007 V(JSModuleNamespace) \ | 1008 V(JSModuleNamespace) \ |
| 1008 V(Map) \ | 1009 V(Map) \ |
| 1009 V(DescriptorArray) \ | 1010 V(DescriptorArray) \ |
| 1011 V(DictionarySchema) \ |
| 1010 V(FrameArray) \ | 1012 V(FrameArray) \ |
| 1011 V(TransitionArray) \ | 1013 V(TransitionArray) \ |
| 1012 V(FeedbackMetadata) \ | 1014 V(FeedbackMetadata) \ |
| 1013 V(FeedbackVector) \ | 1015 V(FeedbackVector) \ |
| 1014 V(DeoptimizationInputData) \ | 1016 V(DeoptimizationInputData) \ |
| 1015 V(DeoptimizationOutputData) \ | 1017 V(DeoptimizationOutputData) \ |
| 1016 V(DependentCode) \ | 1018 V(DependentCode) \ |
| 1017 V(HandlerTable) \ | 1019 V(HandlerTable) \ |
| 1018 V(FixedArray) \ | 1020 V(FixedArray) \ |
| 1019 V(BoilerplateDescription) \ | 1021 V(BoilerplateDescription) \ |
| (...skipping 2209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3229 // Transfer a complete descriptor from the src descriptor array to this | 3231 // Transfer a complete descriptor from the src descriptor array to this |
| 3230 // descriptor array. | 3232 // descriptor array. |
| 3231 void CopyFrom(int index, DescriptorArray* src); | 3233 void CopyFrom(int index, DescriptorArray* src); |
| 3232 | 3234 |
| 3233 // Swap first and second descriptor. | 3235 // Swap first and second descriptor. |
| 3234 inline void SwapSortedKeys(int first, int second); | 3236 inline void SwapSortedKeys(int first, int second); |
| 3235 | 3237 |
| 3236 DISALLOW_IMPLICIT_CONSTRUCTORS(DescriptorArray); | 3238 DISALLOW_IMPLICIT_CONSTRUCTORS(DescriptorArray); |
| 3237 }; | 3239 }; |
| 3238 | 3240 |
| 3241 // A list of keys expected to be searched in "dictionary-like" objects. |
| 3242 // See v8::DictionarySchema. |
| 3243 class DictionarySchema : public FixedArray { |
| 3244 public: |
| 3245 static Handle<DictionarySchema> New(Isolate* isolate, int size); |
| 3246 DECLARE_CAST(DictionarySchema); |
| 3247 |
| 3248 private: |
| 3249 DISALLOW_IMPLICIT_CONSTRUCTORS(DictionarySchema); |
| 3250 }; |
| 3239 | 3251 |
| 3240 enum SearchMode { ALL_ENTRIES, VALID_ENTRIES }; | 3252 enum SearchMode { ALL_ENTRIES, VALID_ENTRIES }; |
| 3241 | 3253 |
| 3242 template <SearchMode search_mode, typename T> | 3254 template <SearchMode search_mode, typename T> |
| 3243 inline int Search(T* array, Name* name, int valid_entries = 0, | 3255 inline int Search(T* array, Name* name, int valid_entries = 0, |
| 3244 int* out_insertion_index = NULL); | 3256 int* out_insertion_index = NULL); |
| 3245 | 3257 |
| 3246 | 3258 |
| 3247 // HashTable is a subclass of FixedArray that implements a hash table | 3259 // HashTable is a subclass of FixedArray that implements a hash table |
| 3248 // that uses open addressing and quadratic probing. | 3260 // that uses open addressing and quadratic probing. |
| (...skipping 8329 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11578 } | 11590 } |
| 11579 }; | 11591 }; |
| 11580 | 11592 |
| 11581 | 11593 |
| 11582 } // NOLINT, false-positive due to second-order macros. | 11594 } // NOLINT, false-positive due to second-order macros. |
| 11583 } // NOLINT, false-positive due to second-order macros. | 11595 } // NOLINT, false-positive due to second-order macros. |
| 11584 | 11596 |
| 11585 #include "src/objects/object-macros-undef.h" | 11597 #include "src/objects/object-macros-undef.h" |
| 11586 | 11598 |
| 11587 #endif // V8_OBJECTS_H_ | 11599 #endif // V8_OBJECTS_H_ |
| OLD | NEW |