diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2016-05-24 08:28:08 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2016-05-24 08:28:08 +0000 |
commit | a4e969f4965059196ca948db781e52f7cfebf19e (patch) | |
tree | 6ca352808c8fdc52006a0f33f6ae3c593b23867d /Source/JavaScriptCore/runtime/JSArrayIterator.h | |
parent | 41386e9cb918eed93b3f13648cbef387e371e451 (diff) | |
download | WebKitGtk-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.h | 29 |
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; }; } |