summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/runtime/JSArrayIterator.h
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2016-05-24 08:28:08 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2016-05-24 08:28:08 +0000
commita4e969f4965059196ca948db781e52f7cfebf19e (patch)
tree6ca352808c8fdc52006a0f33f6ae3c593b23867d /Source/JavaScriptCore/runtime/JSArrayIterator.h
parent41386e9cb918eed93b3f13648cbef387e371e451 (diff)
downloadWebKitGtk-tarball-a4e969f4965059196ca948db781e52f7cfebf19e.tar.gz
webkitgtk-2.12.3webkitgtk-2.12.3
Diffstat (limited to 'Source/JavaScriptCore/runtime/JSArrayIterator.h')
-rw-r--r--Source/JavaScriptCore/runtime/JSArrayIterator.h29
1 files changed, 5 insertions, 24 deletions
diff --git a/Source/JavaScriptCore/runtime/JSArrayIterator.h b/Source/JavaScriptCore/runtime/JSArrayIterator.h
index 2994a67d1..0166bd2e5 100644
--- a/Source/JavaScriptCore/runtime/JSArrayIterator.h
+++ b/Source/JavaScriptCore/runtime/JSArrayIterator.h
@@ -33,11 +33,7 @@ namespace JSC {
enum ArrayIterationKind : uint32_t {
ArrayIterateKey,
ArrayIterateValue,
- ArrayIterateKeyValue,
- ArrayIterateSparseTag = 4,
- ArrayIterateSparseKey,
- ArrayIterateSparseValue,
- ArrayIterateSparseKeyValue
+ ArrayIterateKeyValue
};
class JSArrayIterator : public JSNonFinalObject {
@@ -59,33 +55,18 @@ public:
return instance;
}
- ArrayIterationKind iterationKind() const { return m_iterationKind; }
- JSObject* iteratedObject() const { return m_iteratedObject.get(); }
- size_t nextIndex() const { return m_nextIndex; }
- void setNextIndex(size_t nextIndex) { m_nextIndex = nextIndex; }
- void finish() { m_nextIndex = std::numeric_limits<uint32_t>::max(); }
-
- using JSNonFinalObject::arrayStorageOrNull;
- static ptrdiff_t offsetOfIterationKind() { return OBJECT_OFFSETOF(JSArrayIterator, m_iterationKind); }
- static ptrdiff_t offsetOfIteratedObject() { return OBJECT_OFFSETOF(JSArrayIterator, m_iteratedObject); }
- static ptrdiff_t offsetOfNextIndex() { return OBJECT_OFFSETOF(JSArrayIterator, m_nextIndex); }
+ ArrayIterationKind kind(ExecState*) const;
+ JSValue iteratedValue(ExecState*) const;
+ JSArrayIterator* clone(ExecState*);
+ using JSNonFinalObject::arrayStorageOrNull;
private:
-
- static const unsigned StructureFlags = Base::StructureFlags | OverridesVisitChildren;
-
JSArrayIterator(VM& vm, Structure* structure)
: Base(vm, structure)
- , m_nextIndex(0)
{
}
void finishCreation(VM&, JSGlobalObject*, ArrayIterationKind, JSObject* iteratedObject);
- static void visitChildren(JSCell*, SlotVisitor&);
-
- ArrayIterationKind m_iterationKind;
- WriteBarrier<JSObject> m_iteratedObject;
- uint32_t m_nextIndex;
};
}