| Index: src/elements.h
|
| diff --git a/src/elements.h b/src/elements.h
|
| index 8704fffa70029c004837d2ee297ac4330c3880a9..f4d15fc828b751ab8f4c488e85f1586d4c001fa6 100644
|
| --- a/src/elements.h
|
| +++ b/src/elements.h
|
| @@ -175,9 +175,12 @@ class ElementsAccessor {
|
|
|
| protected:
|
| friend class SloppyArgumentsElementsAccessor;
|
| + friend class LookupIterator;
|
|
|
| - virtual uint32_t GetCapacity(Handle<JSObject> holder,
|
| - Handle<FixedArrayBase> backing_store) = 0;
|
| + static ElementsAccessor* ForArray(FixedArrayBase* array);
|
| +
|
| + virtual uint32_t GetCapacity(JSObject* holder,
|
| + FixedArrayBase* backing_store) = 0;
|
|
|
| // Element handlers distinguish between indexes and keys when they manipulate
|
| // elements. Indexes refer to elements in terms of their location in the
|
| @@ -187,8 +190,12 @@ class ElementsAccessor {
|
| // keys are equivalent to indexes, and GetKeyForIndex returns the same value
|
| // it is passed. In the NumberDictionary ElementsAccessor, GetKeyForIndex maps
|
| // the index to a key using the KeyAt method on the NumberDictionary.
|
| - virtual uint32_t GetKeyForIndex(Handle<FixedArrayBase> backing_store,
|
| + virtual uint32_t GetKeyForIndex(FixedArrayBase* backing_store,
|
| uint32_t index) = 0;
|
| + virtual uint32_t GetIndexForKey(FixedArrayBase* backing_store,
|
| + uint32_t key) = 0;
|
| + virtual PropertyDetails GetDetails(FixedArrayBase* backing_store,
|
| + uint32_t index) = 0;
|
|
|
| private:
|
| static ElementsAccessor** elements_accessors_;
|
|
|