diff options
author | Lars Knoll <lars.knoll@digia.com> | 2014-05-09 14:14:02 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2014-07-22 13:49:18 +0200 |
commit | 0fd24cf96e79bea3fb625563ddd3ce6f1ca8bd4b (patch) | |
tree | 6dc96a61c65b8c6ecf1c2f362510630af56e2d60 /src/qml/jsruntime/qv4object_p.h | |
parent | dba56a752c932670c0e9461f106d2bc084276b6f (diff) |
Convert most simple objects to the new constructor scheme
Change-Id: I90042037bc0555771bd98233977c7d2b735bb718
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4object_p.h')
-rw-r--r-- | src/qml/jsruntime/qv4object_p.h | 54 |
1 files changed, 28 insertions, 26 deletions
diff --git a/src/qml/jsruntime/qv4object_p.h b/src/qml/jsruntime/qv4object_p.h index b98c77108e..a1b107dbf0 100644 --- a/src/qml/jsruntime/qv4object_p.h +++ b/src/qml/jsruntime/qv4object_p.h @@ -323,6 +323,17 @@ private: struct BooleanObject: Object { struct Data : Object::Data { + Data(ExecutionEngine *engine, const ValueRef val) + : Object::Data(engine->booleanClass) + { + value = val; + } + Data(InternalClass *ic) + : Object::Data(ic) + { + Q_ASSERT(internalClass->vtable == staticVTable()); + value = Encode(false); + } Value value; }; struct { @@ -333,22 +344,19 @@ struct BooleanObject: Object { Value value() const { return d()->value; } - BooleanObject(ExecutionEngine *engine, const ValueRef val) - : Object(engine->booleanClass) - { - d()->value = val; - } -protected: - BooleanObject(InternalClass *ic) - : Object(ic) - { - Q_ASSERT(internalClass()->vtable == staticVTable()); - d()->value = Encode(false); - } }; struct NumberObject: Object { struct Data : Object::Data { + Data(ExecutionEngine *engine, const ValueRef val) + : Object::Data(engine->numberClass) { + value = val; + } + Data(InternalClass *ic) + : Object::Data(ic) { + Q_ASSERT(internalClass->vtable == staticVTable()); + value = Encode((int)0); + } Value value; }; struct { @@ -359,29 +367,23 @@ struct NumberObject: Object { Value value() const { return d()->value; } - NumberObject(ExecutionEngine *engine, const ValueRef val) - : Object(engine->numberClass) { - d()->value = val; - } -protected: - NumberObject(InternalClass *ic) - : Object(ic) { - Q_ASSERT(internalClass()->vtable == staticVTable()); - d()->value = Encode((int)0); - } }; struct ArrayObject: Object { + struct Data : Object::Data { + Data(ExecutionEngine *engine) : Object::Data(engine->arrayClass) { init(); } + Data(ExecutionEngine *engine, const QStringList &list); + Data(InternalClass *ic) : Object::Data(ic) { init(); } + void init() + { memberData[LengthPropertyIndex] = Primitive::fromInt32(0); } + }; + V4_OBJECT Q_MANAGED_TYPE(ArrayObject) enum { LengthPropertyIndex = 0 }; - ArrayObject(ExecutionEngine *engine) : Object(engine->arrayClass) { init(engine); } - ArrayObject(ExecutionEngine *engine, const QStringList &list); - ArrayObject(InternalClass *ic) : Object(ic) { init(ic->engine); } - void init(ExecutionEngine *engine); static ReturnedValue getLookup(Managed *m, Lookup *l); |