aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlvaluetypewrapper_p.h
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2021-04-23 16:19:35 +0200
committerUlf Hermann <ulf.hermann@qt.io>2021-04-30 17:54:10 +0200
commit2b49615db4381fa7c54b1ebbc9875d214ad292aa (patch)
treeb79a86598e02af8a497e8e05446291d4769b8e5b /src/qml/qml/qqmlvaluetypewrapper_p.h
parent499fcb5d399321c3d887ead8f5a5b8696841a7f9 (diff)
Redesign the AOT lookups
Each kind of lookup should come with a function that tries to execute the lookup, taking a minimal number of parameters, and another one that initializes the lookup, taking whatever is needed for that. No initialization should be done in the execution step and vice versa. Rather, the execution step should be repeated if an initialization had to be done first. This way, the happy path can be very fast if the lookups have been initialized before. Change-Id: Ic435b3dd4906d00144138cb05161a99a0a9c64ed Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/qml/qqmlvaluetypewrapper_p.h')
-rw-r--r--src/qml/qml/qqmlvaluetypewrapper_p.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/qml/qml/qqmlvaluetypewrapper_p.h b/src/qml/qml/qqmlvaluetypewrapper_p.h
index 5d43f8b7eb..0eb1088a64 100644
--- a/src/qml/qml/qqmlvaluetypewrapper_p.h
+++ b/src/qml/qml/qqmlvaluetypewrapper_p.h
@@ -143,6 +143,8 @@ public:
static ReturnedValue virtualResolveLookupGetter(const Object *object, ExecutionEngine *engine, Lookup *lookup);
static bool virtualResolveLookupSetter(Object *object, ExecutionEngine *engine, Lookup *lookup, const Value &value);
static ReturnedValue lookupGetter(Lookup *lookup, ExecutionEngine *engine, const Value &object);
+ static bool lookupSetter(QV4::Lookup *l, QV4::ExecutionEngine *engine,
+ QV4::Value &object, const QV4::Value &value);
static void initProto(ExecutionEngine *v4);
};