aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4executablecompilationunit_p.h
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2024-01-08 11:31:34 +0100
committerUlf Hermann <ulf.hermann@qt.io>2024-01-13 16:03:58 +0100
commit53f75b7f894ba248554df49627d2f17b3f127e23 (patch)
treeeb57a2ad8c2404bc353985dbbcd450a6180a6f35 /src/qml/jsruntime/qv4executablecompilationunit_p.h
parentb5374fdc603b263a02ec1885d81cf1d56b3579a9 (diff)
QtQml: Move inlineComponentData and icRootName into base CU
Change-Id: I89e44644b083681f069d1d7a385bec68b4bfd80b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4executablecompilationunit_p.h')
-rw-r--r--src/qml/jsruntime/qv4executablecompilationunit_p.h42
1 files changed, 18 insertions, 24 deletions
diff --git a/src/qml/jsruntime/qv4executablecompilationunit_p.h b/src/qml/jsruntime/qv4executablecompilationunit_p.h
index 49de05a227..c8e8d05aac 100644
--- a/src/qml/jsruntime/qv4executablecompilationunit_p.h
+++ b/src/qml/jsruntime/qv4executablecompilationunit_p.h
@@ -31,27 +31,6 @@ QT_BEGIN_NAMESPACE
class QQmlScriptData;
class QQmlEnginePrivate;
-struct InlineComponentData {
-
- InlineComponentData() = default;
- InlineComponentData(
- const QQmlType &qmlType, int objectIndex, int nameIndex, int totalObjectCount,
- int totalBindingCount, int totalParserStatusCount)
- : qmlType(qmlType)
- , objectIndex(objectIndex)
- , nameIndex(nameIndex)
- , totalObjectCount(totalObjectCount)
- , totalBindingCount(totalBindingCount)
- , totalParserStatusCount(totalParserStatusCount) {}
-
- QQmlType qmlType;
- int objectIndex = -1;
- int nameIndex = -1;
- int totalObjectCount = 0;
- int totalBindingCount = 0;
- int totalParserStatusCount = 0;
-};
-
namespace QV4 {
// index is per-object binding index
@@ -129,7 +108,13 @@ public:
int m_totalBindingsCount = 0; // Number of bindings used in this type
int m_totalParserStatusCount = 0; // Number of instantiated types that are QQmlParserStatus subclasses
int m_totalObjectCount = 0; // Number of objects explicitly instantiated
- std::unique_ptr<QString> icRootName;
+
+ const QString *icRootName() const { return m_compilationUnit->icRootName.get(); }
+ QString *icRootName() { return m_compilationUnit->icRootName.get(); }
+ void setIcRootName(std::unique_ptr<QString> &&icRootName)
+ {
+ m_compilationUnit->icRootName = std::move(icRootName);
+ }
int totalBindingsCount() const;
int totalParserStatusCount() const;
@@ -146,8 +131,6 @@ public:
QQmlType qmlType;
- QHash<QString, InlineComponentData> inlineComponentData;
-
int inlineComponentId(const QString &inlineComponentName) const
{
for (int i = 0; i < objectCount(); ++i) {
@@ -332,6 +315,17 @@ public:
: nullptr;
}
+ const QHash<QString, CompiledData::InlineComponentData> &inlineComponentData() const
+ {
+ return m_compilationUnit->inlineComponentData;
+ }
+
+ void setInlineComponentData(
+ const QHash<QString, CompiledData::InlineComponentData> &inlineComponentData)
+ {
+ m_compilationUnit->inlineComponentData = inlineComponentData;
+ }
+
void populate();
void clear();