aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlscript_p.h
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2013-10-09 09:37:08 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-11 22:55:08 +0200
commit28f67263a181e2d99b2c240f9d698bf64100ac92 (patch)
tree3c7c6287e00d6032ff53a78b7a9b0caa51cc9d23 /src/qml/qml/qqmlscript_p.h
parent774963f52f569e637f45d6c6079121253e54b61b (diff)
Compile signal handler expressions in the loader thread
Handle them similar to function declarations, except that we need to synthesize the expression into a function declaration that includes the signal parameter names. This is done quite similar to the code path in the new compiler. Change-Id: I751081f7f1052692da6e2ed60c7f5c017372d829 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/qml/qml/qqmlscript_p.h')
-rw-r--r--src/qml/qml/qqmlscript_p.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/qml/qml/qqmlscript_p.h b/src/qml/qml/qqmlscript_p.h
index 7aecba993b..86bbc1fb3a 100644
--- a/src/qml/qml/qqmlscript_p.h
+++ b/src/qml/qml/qqmlscript_p.h
@@ -227,9 +227,13 @@ public:
LocationSpan location;
// Used by compiler
+ struct SignalData {
+ int signalExpressionContextStack;
+ int functionIndex; // before gen() index in functionsToCompile, then index in runtime functions
+ };
union {
QQmlCompilerTypes::BindingReference *bindingReference;
- int signalExpressionContextStack;
+ SignalData signalData;
};
// Used in Property::ValueList lists