diff options
Diffstat (limited to 'deps/v8/src/elements.h')
-rw-r--r-- | deps/v8/src/elements.h | 43 |
1 files changed, 33 insertions, 10 deletions
diff --git a/deps/v8/src/elements.h b/deps/v8/src/elements.h index 822fca50ee..ffd6428ce9 100644 --- a/deps/v8/src/elements.h +++ b/deps/v8/src/elements.h @@ -71,6 +71,39 @@ class ElementsAccessor { uint32_t key, FixedArrayBase* backing_store = NULL) = 0; + // Returns an element's attributes, or ABSENT if there is no such + // element. This method doesn't iterate up the prototype chain. The caller + // can optionally pass in the backing store to use for the check, which must + // be compatible with the ElementsKind of the ElementsAccessor. If + // backing_store is NULL, the holder->elements() is used as the backing store. + MUST_USE_RESULT virtual PropertyAttributes GetAttributes( + Object* receiver, + JSObject* holder, + uint32_t key, + FixedArrayBase* backing_store = NULL) = 0; + + // Returns an element's type, or NONEXISTENT if there is no such + // element. This method doesn't iterate up the prototype chain. The caller + // can optionally pass in the backing store to use for the check, which must + // be compatible with the ElementsKind of the ElementsAccessor. If + // backing_store is NULL, the holder->elements() is used as the backing store. + MUST_USE_RESULT virtual PropertyType GetType( + Object* receiver, + JSObject* holder, + uint32_t key, + FixedArrayBase* backing_store = NULL) = 0; + + // Returns an element's accessors, or NULL if the element does not exist or + // is plain. This method doesn't iterate up the prototype chain. The caller + // can optionally pass in the backing store to use for the check, which must + // be compatible with the ElementsKind of the ElementsAccessor. If + // backing_store is NULL, the holder->elements() is used as the backing store. + MUST_USE_RESULT virtual AccessorPair* GetAccessorPair( + Object* receiver, + JSObject* holder, + uint32_t key, + FixedArrayBase* backing_store = NULL) = 0; + // Modifies the length data property as specified for JSArrays and resizes the // underlying backing store accordingly. The method honors the semantics of // changing array sizes as defined in EcmaScript 5.1 15.4.5.2, i.e. array that @@ -164,16 +197,6 @@ class ElementsAccessor { DISALLOW_COPY_AND_ASSIGN(ElementsAccessor); }; - -void CopyObjectToObjectElements(FixedArray* from_obj, - ElementsKind from_kind, - uint32_t from_start, - FixedArray* to_obj, - ElementsKind to_kind, - uint32_t to_start, - int copy_size); - - } } // namespace v8::internal #endif // V8_ELEMENTS_H_ |