From c0f961cd6b82a523e277f6d8778a20508b15697d Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Thu, 3 Aug 2017 20:26:28 +0200 Subject: Change function signatures for call/construct back Change those back again to return a value. This will be required to avoid creation of Scope objects between JS function calls. Change-Id: I05cb5cf8fd0c13dcefa60d213ccd5983fab57ea3 Reviewed-by: Erik Verbruggen --- src/qml/jsruntime/qv4functionobject_p.h | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'src/qml/jsruntime/qv4functionobject_p.h') diff --git a/src/qml/jsruntime/qv4functionobject_p.h b/src/qml/jsruntime/qv4functionobject_p.h index 6ce5734b6d..e62ffae20b 100644 --- a/src/qml/jsruntime/qv4functionobject_p.h +++ b/src/qml/jsruntime/qv4functionobject_p.h @@ -156,8 +156,8 @@ struct Q_QML_EXPORT FunctionObject: Object { using Object::construct; using Object::call; - static void construct(const Managed *that, Scope &scope, CallData *); - static void call(const Managed *that, Scope &scope, CallData *d); + static ReturnedValue construct(const Managed *that, CallData *); + static ReturnedValue call(const Managed *that, CallData *d); static Heap::FunctionObject *createScriptFunction(ExecutionContext *scope, Function *function); @@ -178,8 +178,8 @@ struct FunctionCtor: FunctionObject { V4_OBJECT2(FunctionCtor, FunctionObject) - static void construct(const Managed *that, Scope &scope, CallData *callData); - static void call(const Managed *that, Scope &scope, CallData *callData); + static ReturnedValue construct(const Managed *that, CallData *callData); + static ReturnedValue call(const Managed *that, CallData *callData); }; struct FunctionPrototype: FunctionObject @@ -203,20 +203,20 @@ struct Q_QML_EXPORT BuiltinFunction : FunctionObject { return scope->engine()->memoryManager->allocObject(scope, name, code); } - static void construct(const Managed *, Scope &scope, CallData *); - static void call(const Managed *that, Scope &scope, CallData *callData); + static ReturnedValue construct(const Managed *, CallData *); + static ReturnedValue call(const Managed *that, CallData *callData); }; struct IndexedBuiltinFunction: FunctionObject { V4_OBJECT2(IndexedBuiltinFunction, FunctionObject) - static void construct(const Managed *m, Scope &scope, CallData *) + static ReturnedValue construct(const Managed *m, CallData *) { - scope.result = static_cast(m)->engine()->throwTypeError(); + return m->engine()->throwTypeError(); } - static void call(const Managed *that, Scope &scope, CallData *callData); + static ReturnedValue call(const Managed *that, CallData *callData); }; void Heap::IndexedBuiltinFunction::init(QV4::ExecutionContext *scope, uint index, @@ -232,8 +232,8 @@ struct ScriptFunction : FunctionObject { V4_OBJECT2(ScriptFunction, FunctionObject) V4_INTERNALCLASS(ScriptFunction) - static void construct(const Managed *, Scope &scope, CallData *callData); - static void call(const Managed *that, Scope &scope, CallData *callData); + static ReturnedValue construct(const Managed *, CallData *callData); + static ReturnedValue call(const Managed *that, CallData *callData); InternalClass *classForConstructor() const; }; @@ -251,8 +251,8 @@ struct BoundFunction: FunctionObject { Value boundThis() const { return d()->boundThis; } Heap::MemberData *boundArgs() const { return d()->boundArgs; } - static void construct(const Managed *, Scope &scope, CallData *d); - static void call(const Managed *that, Scope &scope, CallData *dd); + static ReturnedValue construct(const Managed *, CallData *d); + static ReturnedValue call(const Managed *that, CallData *dd); }; } -- cgit v1.2.3