aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4function_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2013-11-15 16:36:13 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-12-04 09:45:33 +0100
commit0fa9cf218bdd3054585f23abfb2b707e26ce987a (patch)
tree346592c0d570d138278c659dbbbbda23ec1d148d /src/qml/jsruntime/qv4function_p.h
parent608a9600142878574a509964941413bb15c91201 (diff)
Use an internalClass to represent formals and locals in CallContexts
formals and locals in a CallContext where so far accessed through a linear search in ExecutionContext::getProperty. Fix this by introducing an internalClass for the Function used by the call context. Change-Id: I1141efa12b19d6de4a354bfd6e769c5ffcb8898b Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4function_p.h')
-rw-r--r--src/qml/jsruntime/qv4function_p.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/qml/jsruntime/qv4function_p.h b/src/qml/jsruntime/qv4function_p.h
index a7b569cf7e..8d07853b45 100644
--- a/src/qml/jsruntime/qv4function_p.h
+++ b/src/qml/jsruntime/qv4function_p.h
@@ -90,8 +90,9 @@ struct Function {
const uchar *codeData;
quint32 codeSize;
- QVector<String *> formals;
- QVector<String *> locals;
+ // first nArguments names in internalClass are the actual arguments
+ int nArguments;
+ InternalClass *internalClass;
Function(ExecutionEngine *engine, CompiledData::CompilationUnit *unit, const CompiledData::Function *function,
ReturnedValue (*codePtr)(ExecutionContext *, const uchar *), quint32 _codeSize);