aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/src/elements.h
diff options
context:
space:
mode:
authorMichaƫl Zasso <mic.besace@gmail.com>2015-10-06 08:42:38 +0200
committerAli Ijaz Sheikh <ofrobots@google.com>2015-10-14 11:20:34 -0700
commitd8011d1683fe0d977de2bea1147f5213d4490c5a (patch)
tree54967df8dc1732e59eef39e5c5b39fe99ad88977 /deps/v8/src/elements.h
parentd1a2e5357ef0357cec9b516fa9ac78cc38a984aa (diff)
downloadandroid-node-v8-d8011d1683fe0d977de2bea1147f5213d4490c5a.tar.gz
android-node-v8-d8011d1683fe0d977de2bea1147f5213d4490c5a.tar.bz2
android-node-v8-d8011d1683fe0d977de2bea1147f5213d4490c5a.zip
deps: upgrade V8 to 4.6.85.23
PR-URL: https://github.com/nodejs/node/pull/3351 Reviewed-By: indutny - Fedor Indutny <fedor.indutny@gmail.com> Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'deps/v8/src/elements.h')
-rw-r--r--deps/v8/src/elements.h28
1 files changed, 15 insertions, 13 deletions
diff --git a/deps/v8/src/elements.h b/deps/v8/src/elements.h
index 9005096a1e..0131f0baf0 100644
--- a/deps/v8/src/elements.h
+++ b/deps/v8/src/elements.h
@@ -38,17 +38,8 @@ class ElementsAccessor {
return HasElement(holder, index, handle(holder->elements()));
}
- // Returns the element with the specified index or undefined 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.
- virtual Handle<Object> Get(Handle<JSObject> holder, uint32_t index,
- Handle<FixedArrayBase> backing_store) = 0;
-
- inline Handle<Object> Get(Handle<JSObject> holder, uint32_t index) {
- return Get(holder, index, handle(holder->elements()));
- }
+ virtual Handle<Object> Get(Handle<FixedArrayBase> backing_store,
+ uint32_t entry) = 0;
// Modifies the length data property as specified for JSArrays and resizes the
// underlying backing store accordingly. The method honors the semantics of
@@ -69,6 +60,9 @@ class ElementsAccessor {
// destination array with the hole.
static const int kCopyToEndAndInitializeToHole = -2;
+ static const int kDirectionForward = 1;
+ static const int kDirectionReverse = -1;
+
// Copy elements from one backing store to another. Typically, callers specify
// the source JSObject or JSArray in source_holder. If the holder's backing
// store is available, it can be passed in source and source_holder is
@@ -119,16 +113,24 @@ class ElementsAccessor {
static void InitializeOncePerProcess();
static void TearDown();
- virtual void Set(FixedArrayBase* backing_store, uint32_t index,
+ virtual void Set(FixedArrayBase* backing_store, uint32_t entry,
Object* value) = 0;
+
virtual void Reconfigure(Handle<JSObject> object,
Handle<FixedArrayBase> backing_store, uint32_t entry,
Handle<Object> value,
PropertyAttributes attributes) = 0;
- virtual void Add(Handle<JSObject> object, uint32_t entry,
+
+ virtual void Add(Handle<JSObject> object, uint32_t index,
Handle<Object> value, PropertyAttributes attributes,
uint32_t new_capacity) = 0;
+ // TODO(cbruni): Consider passing Arguments* instead of Object** depending on
+ // the requirements of future callers.
+ virtual uint32_t Push(Handle<JSArray> receiver,
+ Handle<FixedArrayBase> backing_store, Object** objects,
+ uint32_t start, int direction) = 0;
+
protected:
friend class LookupIterator;