diff options
author | Lars Knoll <lars.knoll@theqtcompany.com> | 2014-11-03 20:41:17 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2014-11-08 19:47:43 +0100 |
commit | 5117c8e79c6d3933a0724b78fde9297a03741239 (patch) | |
tree | f1711d94d4bbaa4782dba2e3b4ca4127a4239491 /src/qml/jsruntime/qv4objectiterator_p.h | |
parent | ef8ad8234b481d3985d748f7607ef486e1af086f (diff) |
Move more Data members over to the Heap namespace
Change-Id: I74347da3f0f47220bb1f8cf13b872b547fd18a4d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4objectiterator_p.h')
-rw-r--r-- | src/qml/jsruntime/qv4objectiterator_p.h | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/src/qml/jsruntime/qv4objectiterator_p.h b/src/qml/jsruntime/qv4objectiterator_p.h index dfd9b0fb34..4398ea9b5a 100644 --- a/src/qml/jsruntime/qv4objectiterator_p.h +++ b/src/qml/jsruntime/qv4objectiterator_p.h @@ -67,17 +67,17 @@ private: ObjectIterator(Value *scratch1, Value *scratch2, uint flags); // Constructor that requires calling init() }; +namespace Heap { +struct ForEachIteratorObject : Object { + ForEachIteratorObject(QV4::ExecutionEngine *engine, QV4::Object *o); + ObjectIterator it; + Value workArea[2]; +}; + +} + struct ForEachIteratorObject: Object { - struct Data : Heap::Object { - Data(ExecutionEngine *engine, QV4::Object *o) - : Heap::Object(engine) - , it(workArea, workArea + 1, o, ObjectIterator::EnumerableOnly|ObjectIterator::WithProtoChain) { - setVTable(staticVTable()); - } - ObjectIterator it; - Value workArea[2]; - }; - V4_OBJECT(Object) + V4_OBJECT2(ForEachIteratorObject, Object) Q_MANAGED_TYPE(ForeachIteratorObject) ReturnedValue nextPropertyName() { return d()->it.nextPropertyNameAsString(); } @@ -86,6 +86,14 @@ protected: static void markObjects(Heap::Base *that, ExecutionEngine *e); }; +inline +Heap::ForEachIteratorObject::ForEachIteratorObject(QV4::ExecutionEngine *engine, QV4::Object *o) + : Heap::Object(engine) + , it(workArea, workArea + 1, o, ObjectIterator::EnumerableOnly|ObjectIterator::WithProtoChain) +{ + setVTable(QV4::ForEachIteratorObject::staticVTable()); +} + } |