diff options
Diffstat (limited to 'src/qml/jsruntime/qv4context_p.h')
-rw-r--r-- | src/qml/jsruntime/qv4context_p.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/qml/jsruntime/qv4context_p.h b/src/qml/jsruntime/qv4context_p.h index 4d27b0456c..1431c5ac82 100644 --- a/src/qml/jsruntime/qv4context_p.h +++ b/src/qml/jsruntime/qv4context_p.h @@ -162,6 +162,19 @@ struct Q_QML_EXPORT ExecutionContext : public Managed Heap::FunctionObject *getFunctionObject() const; static void markObjects(Heap::Base *m, ExecutionEngine *e); + + const Value &thisObject() const { + return d()->callData->thisObject; + } + int argc() const { + return d()->callData->argc; + } + const Value *args() const { + return d()->callData->args; + } + ReturnedValue argument(int i) const { + return d()->callData->argument(i); + } }; struct CallContext : public ExecutionContext @@ -179,7 +192,7 @@ struct CallContext : public ExecutionContext }; inline ReturnedValue CallContext::argument(int i) { - return i < d()->callData->argc ? d()->callData->args[i].asReturnedValue() : Primitive::undefinedValue().asReturnedValue(); + return i < argc() ? args()[i].asReturnedValue() : Primitive::undefinedValue().asReturnedValue(); } struct GlobalContext : public ExecutionContext |