aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4objectproto.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2013-09-26 13:05:25 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-28 13:33:58 +0200
commit62d1b5a08aa2c21c95a2a77afbe34c38ed37a2aa (patch)
treed9e542dfb9d7fa5d8e1c71633f6cd18cf234b5e6 /src/qml/jsruntime/qv4objectproto.cpp
parent112531bc23494ba3c5cf2e0a51b2d654be28dbfd (diff)
Fix API for Object::define*Property
use ValueRef instead of const Value &. Change-Id: I3fd0ca829870db27f036825d713c53dc0600be07 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4objectproto.cpp')
-rw-r--r--src/qml/jsruntime/qv4objectproto.cpp39
1 files changed, 20 insertions, 19 deletions
diff --git a/src/qml/jsruntime/qv4objectproto.cpp b/src/qml/jsruntime/qv4objectproto.cpp
index 49bee363a3..02f8cb6e95 100644
--- a/src/qml/jsruntime/qv4objectproto.cpp
+++ b/src/qml/jsruntime/qv4objectproto.cpp
@@ -101,27 +101,28 @@ ReturnedValue ObjectCtor::call(Managed *m, CallData *callData)
return __qmljs_to_object(m->engine()->current, ValueRef(&callData->args[0]));
}
-void ObjectPrototype::init(ExecutionEngine *v4, const Value &ctor)
+void ObjectPrototype::init(ExecutionEngine *v4, ObjectRef ctor)
{
Scope scope(v4);
-
- ctor.objectValue()->defineReadonlyProperty(v4->id_prototype, Value::fromObject(this));
- ctor.objectValue()->defineReadonlyProperty(v4->id_length, Primitive::fromInt32(1));
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("getPrototypeOf"), method_getPrototypeOf, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("getOwnPropertyDescriptor"), method_getOwnPropertyDescriptor, 2);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("getOwnPropertyNames"), method_getOwnPropertyNames, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("create"), method_create, 2);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("defineProperty"), method_defineProperty, 3);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("defineProperties"), method_defineProperties, 2);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("seal"), method_seal, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("freeze"), method_freeze, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("preventExtensions"), method_preventExtensions, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("isSealed"), method_isSealed, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("isFrozen"), method_isFrozen, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("isExtensible"), method_isExtensible, 1);
- ctor.objectValue()->defineDefaultProperty(QStringLiteral("keys"), method_keys, 1);
-
- defineDefaultProperty(QStringLiteral("constructor"), ctor);
+ ScopedObject o(scope);
+
+ ctor->defineReadonlyProperty(v4->id_prototype, (o = this));
+ ctor->defineReadonlyProperty(v4->id_length, Primitive::fromInt32(1));
+ ctor->defineDefaultProperty(QStringLiteral("getPrototypeOf"), method_getPrototypeOf, 1);
+ ctor->defineDefaultProperty(QStringLiteral("getOwnPropertyDescriptor"), method_getOwnPropertyDescriptor, 2);
+ ctor->defineDefaultProperty(QStringLiteral("getOwnPropertyNames"), method_getOwnPropertyNames, 1);
+ ctor->defineDefaultProperty(QStringLiteral("create"), method_create, 2);
+ ctor->defineDefaultProperty(QStringLiteral("defineProperty"), method_defineProperty, 3);
+ ctor->defineDefaultProperty(QStringLiteral("defineProperties"), method_defineProperties, 2);
+ ctor->defineDefaultProperty(QStringLiteral("seal"), method_seal, 1);
+ ctor->defineDefaultProperty(QStringLiteral("freeze"), method_freeze, 1);
+ ctor->defineDefaultProperty(QStringLiteral("preventExtensions"), method_preventExtensions, 1);
+ ctor->defineDefaultProperty(QStringLiteral("isSealed"), method_isSealed, 1);
+ ctor->defineDefaultProperty(QStringLiteral("isFrozen"), method_isFrozen, 1);
+ ctor->defineDefaultProperty(QStringLiteral("isExtensible"), method_isExtensible, 1);
+ ctor->defineDefaultProperty(QStringLiteral("keys"), method_keys, 1);
+
+ defineDefaultProperty(QStringLiteral("constructor"), (o = ctor));
defineDefaultProperty(v4->id_toString, method_toString, 0);
defineDefaultProperty(QStringLiteral("toLocaleString"), method_toLocaleString, 0);
defineDefaultProperty(v4->id_valueOf, method_valueOf, 0);