diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2016-05-19 16:14:22 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2016-05-23 06:35:16 +0000 |
commit | b0377f4581a7f62cccd375a1f9400ca57225e4ac (patch) | |
tree | b4286a5b9244b1bd37fdcef3f90ecdaeea06e51c /src/qml/qml/qqmlobjectcreator.cpp | |
parent | 02c384e48d672bac1ee8ba554ba335ce0442057e (diff) |
Optimize property/alias data structures
We used to store property declarations and alias declarations in the same
properties array in CompiledData::Object. However at run-time the
QQmlVMEMetaObject implements them separately, using separate data structures
(in the meta-data) and (most importantly) using separate property id segments:
First the properties, then the aliases. By reflecting the same separation in
CompiledData::Object with property arrays and alias arrays, we can pave the way
for getting rid of the meta-data in QQmlVMEMetaObject.
Change-Id: Ia84813fe3da6f3fdbd4d2b16136a8bf11fa175a6
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Diffstat (limited to 'src/qml/qml/qqmlobjectcreator.cpp')
-rw-r--r-- | src/qml/qml/qqmlobjectcreator.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/qml/qml/qqmlobjectcreator.cpp b/src/qml/qml/qqmlobjectcreator.cpp index 2ffb1596f5..b8c12f70d1 100644 --- a/src/qml/qml/qqmlobjectcreator.cpp +++ b/src/qml/qml/qqmlobjectcreator.cpp @@ -664,7 +664,7 @@ void QQmlObjectCreator::setupBindings(const QBitArray &bindingsToSkip) if (qmlTypeForObject(_bindingTarget)) { quint32 bindingSkipList = 0; - QQmlPropertyData *defaultProperty = _compiledObject->indexOfDefaultProperty != -1 ? _propertyCache->parent()->defaultProperty() : _propertyCache->defaultProperty(); + QQmlPropertyData *defaultProperty = _compiledObject->indexOfDefaultPropertyOrAlias != -1 ? _propertyCache->parent()->defaultProperty() : _propertyCache->defaultProperty(); const QV4::CompiledData::Binding *binding = _compiledObject->bindingTable(); for (quint32 i = 0; i < _compiledObject->nBindings; ++i, ++binding) { |