Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(57)

Unified Diff: src/elements.h

Issue 1260283002: Array Builtin Refactoring: Creating API methods on ElementsAccessor (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: removing unused method Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/builtins.cc ('k') | src/elements.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/elements.h
diff --git a/src/elements.h b/src/elements.h
index 511b636c3de8082ed2c5dfe16251e7d5e8da08c1..0131f0baf00c6bee8f1dbc94b2e219c31d568190 100644
--- a/src/elements.h
+++ b/src/elements.h
@@ -60,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
@@ -112,14 +115,22 @@ class ElementsAccessor {
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 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;
« no previous file with comments | « src/builtins.cc ('k') | src/elements.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698