diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-09-26 13:05:25 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-28 13:33:58 +0200 |
commit | 62d1b5a08aa2c21c95a2a77afbe34c38ed37a2aa (patch) | |
tree | d9e542dfb9d7fa5d8e1c71633f6cd18cf234b5e6 /src/qml/jsruntime/qv4objectproto.cpp | |
parent | 112531bc23494ba3c5cf2e0a51b2d654be28dbfd (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.cpp | 39 |
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); |