diff options
author | Michaël Zasso <targos@protonmail.com> | 2016-09-06 22:49:51 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2016-09-22 09:51:19 +0200 |
commit | ec02b811a8a5c999bab4de312be2d732b7d9d50b (patch) | |
tree | ca3068017254f238cf413a451c57a803572983a4 /deps/v8/src/elements.h | |
parent | d2eb7ce0105369a9cad82787cb33a665e9bd00ad (diff) | |
download | android-node-v8-ec02b811a8a5c999bab4de312be2d732b7d9d50b.tar.gz android-node-v8-ec02b811a8a5c999bab4de312be2d732b7d9d50b.tar.bz2 android-node-v8-ec02b811a8a5c999bab4de312be2d732b7d9d50b.zip |
deps: update V8 to 5.4.500.27
Pick up latest commit from the 5.4-lkgr branch.
deps: edit V8 gitignore to allow trace event copy
deps: update V8 trace event to 315bf1e2d45be7d53346c31cfcc37424a32c30c8
deps: edit V8 gitignore to allow gtest_prod.h copy
deps: update V8 gtest to 6f8a66431cb592dad629028a50b3dd418a408c87
PR-URL: https://github.com/nodejs/node/pull/8317
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Diffstat (limited to 'deps/v8/src/elements.h')
-rw-r--r-- | deps/v8/src/elements.h | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/deps/v8/src/elements.h b/deps/v8/src/elements.h index 2b18ab07d1..1ffd4d996f 100644 --- a/deps/v8/src/elements.h +++ b/deps/v8/src/elements.h @@ -81,18 +81,12 @@ class ElementsAccessor { // whose PropertyAttribute match |filter|. virtual void CollectElementIndices(Handle<JSObject> object, Handle<FixedArrayBase> backing_store, - KeyAccumulator* keys, - uint32_t range = kMaxUInt32, - PropertyFilter filter = ALL_PROPERTIES, - uint32_t offset = 0) = 0; + KeyAccumulator* keys) = 0; inline void CollectElementIndices(Handle<JSObject> object, - KeyAccumulator* keys, - uint32_t range = kMaxUInt32, - PropertyFilter filter = ALL_PROPERTIES, - uint32_t offset = 0) { - CollectElementIndices(object, handle(object->elements()), keys, range, - filter, offset); + KeyAccumulator* keys) { + CollectElementIndices(object, handle(object->elements(), keys->isolate()), + keys); } virtual Maybe<bool> CollectValuesOrEntries( @@ -100,13 +94,12 @@ class ElementsAccessor { Handle<FixedArray> values_or_entries, bool get_entries, int* nof_items, PropertyFilter filter = ALL_PROPERTIES) = 0; - // - virtual Handle<FixedArray> PrependElementIndices( + virtual MaybeHandle<FixedArray> PrependElementIndices( Handle<JSObject> object, Handle<FixedArrayBase> backing_store, Handle<FixedArray> keys, GetKeysConversion convert, PropertyFilter filter = ALL_PROPERTIES) = 0; - inline Handle<FixedArray> PrependElementIndices( + inline MaybeHandle<FixedArray> PrependElementIndices( Handle<JSObject> object, Handle<FixedArray> keys, GetKeysConversion convert, PropertyFilter filter = ALL_PROPERTIES) { return PrependElementIndices(object, handle(object->elements()), keys, @@ -117,6 +110,8 @@ class ElementsAccessor { KeyAccumulator* accumulator, AddKeyConversion convert) = 0; + virtual void TransitionElementsKind(Handle<JSObject> object, + Handle<Map> map) = 0; virtual void GrowCapacityAndConvert(Handle<JSObject> object, uint32_t capacity) = 0; @@ -135,7 +130,7 @@ class ElementsAccessor { uint32_t new_capacity) = 0; static Handle<JSArray> Concat(Isolate* isolate, Arguments* args, - uint32_t concat_size); + uint32_t concat_size, uint32_t result_length); virtual uint32_t Push(Handle<JSArray> receiver, Arguments* args, uint32_t push_size) = 0; @@ -159,6 +154,19 @@ class ElementsAccessor { virtual uint32_t GetCapacity(JSObject* holder, FixedArrayBase* backing_store) = 0; + // Check an Object's own elements for an element (using SameValueZero + // semantics) + virtual Maybe<bool> IncludesValue(Isolate* isolate, Handle<JSObject> receiver, + Handle<Object> value, uint32_t start, + uint32_t length) = 0; + + // Check an Object's own elements for the index of an element (using SameValue + // semantics) + virtual Maybe<int64_t> IndexOfValue(Isolate* isolate, + Handle<JSObject> receiver, + Handle<Object> value, uint32_t start, + uint32_t length) = 0; + protected: friend class LookupIterator; |