Commit 1862da47 authored by ishell@chromium.org's avatar ishell@chromium.org

Reland of r20606: Further ElementsAccessor handlification (GetKeyForIndex(),...

Reland of r20606: Further ElementsAccessor handlification (GetKeyForIndex(), GetCapacity(), GetType() and GetAttributes()).
It was not related to test failures.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/230373007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20616 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent dc4ba08d
This diff is collapsed.
......@@ -226,11 +226,7 @@ class ElementsAccessor {
return elements_accessors_[elements_kind];
}
// TODO(ishell): Temporary wrapper until handlified.
inline static ElementsAccessor* ForArray(Handle<FixedArrayBase> array) {
return ForArray(*array);
}
static ElementsAccessor* ForArray(FixedArrayBase* array);
static ElementsAccessor* ForArray(Handle<FixedArrayBase> array);
static void InitializeOncePerProcess();
static void TearDown();
......@@ -238,7 +234,7 @@ class ElementsAccessor {
protected:
friend class SloppyArgumentsElementsAccessor;
virtual uint32_t GetCapacity(FixedArrayBase* backing_store) = 0;
virtual uint32_t GetCapacity(Handle<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
......@@ -251,20 +247,6 @@ class ElementsAccessor {
virtual uint32_t GetKeyForIndex(Handle<FixedArrayBase> backing_store,
uint32_t index) = 0;
// TODO(ishell): Non-handlified versions, used only by accessors'
// implementations. To be removed once elements.cc is handlified.
MUST_USE_RESULT virtual PropertyAttributes GetAttributes(
Object* receiver,
JSObject* holder,
uint32_t key,
FixedArrayBase* backing_store) = 0;
MUST_USE_RESULT virtual PropertyType GetType(
Object* receiver,
JSObject* holder,
uint32_t key,
FixedArrayBase* backing_store) = 0;
private:
static ElementsAccessor** elements_accessors_;
const char* name_;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment