OpenCoverage

qqmlirbuilder_p.h #1

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/qtdeclarative/src/qtdeclarative/src/qml/compiler/qqmlirbuilder_p.h
Source codeSwitch to Preprocessed file
LineSourceCount
1/****************************************************************************-
2**-
3** Copyright (C) 2016 The Qt Company Ltd.-
4** Contact: https://www.qt.io/licensing/-
5**-
6** This file is part of the tools applications of the Qt Toolkit.-
7**-
8** $QT_BEGIN_LICENSE:LGPL$-
9** Commercial License Usage-
10** Licensees holding valid commercial Qt licenses may use this file in-
11** accordance with the commercial license agreement provided with the-
12** Software or, alternatively, in accordance with the terms contained in-
13** a written agreement between you and The Qt Company. For licensing terms-
14** and conditions see https://www.qt.io/terms-conditions. For further-
15** information use the contact form at https://www.qt.io/contact-us.-
16**-
17** GNU Lesser General Public License Usage-
18** Alternatively, this file may be used under the terms of the GNU Lesser-
19** General Public License version 3 as published by the Free Software-
20** Foundation and appearing in the file LICENSE.LGPL3 included in the-
21** packaging of this file. Please review the following information to-
22** ensure the GNU Lesser General Public License version 3 requirements-
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.-
24**-
25** GNU General Public License Usage-
26** Alternatively, this file may be used under the terms of the GNU-
27** General Public License version 2.0 or (at your option) the GNU General-
28** Public license version 3 or any later version approved by the KDE Free-
29** Qt Foundation. The licenses are as published by the Free Software-
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3-
31** included in the packaging of this file. Please review the following-
32** information to ensure the GNU General Public License requirements will-
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and-
34** https://www.gnu.org/licenses/gpl-3.0.html.-
35**-
36** $QT_END_LICENSE$-
37**-
38****************************************************************************/-
39#ifndef QQMLIRBUILDER_P_H-
40#define QQMLIRBUILDER_P_H-
41-
42//-
43// W A R N I N G-
44// --------------
45//-
46// This file is not part of the Qt API. It exists purely as an-
47// implementation detail. This header file may change from version to-
48// version without notice, or even be removed.-
49//-
50// We mean it.-
51//-
52-
53#include <private/qqmljsast_p.h>-
54#include <private/qqmljsengine_p.h>-
55#include <private/qv4compiler_p.h>-
56#include <private/qv4compileddata_p.h>-
57#include <private/qqmljsmemorypool_p.h>-
58#include <private/qv4codegen_p.h>-
59#include <private/qv4compiler_p.h>-
60#include <QTextStream>-
61#include <QCoreApplication>-
62-
63#ifndef V4_BOOTSTRAP-
64#include <private/qqmlpropertycache_p.h>-
65#endif-
66-
67QT_BEGIN_NAMESPACE-
68-
69class QQmlPropertyCache;-
70class QQmlContextData;-
71class QQmlTypeNameCache;-
72-
73namespace QmlIR {-
74-
75struct Document;-
76struct IRLoader;-
77-
78template <typename T>-
79struct PoolList-
80{-
81 PoolList()-
82 : first(nullptr)-
83 , last(nullptr)-
84 {}
never executed: end of block
0
85-
86 T *first;-
87 T *last;-
88 int count = 0;-
89-
90 int append(T *item) {-
91 item->next = nullptr;-
92 if (last)
lastDescription
TRUEnever evaluated
FALSEnever evaluated
0
93 last->next = item;
never executed: last->next = item;
0
94 else-
95 first = item;
never executed: first = item;
0
96 last = item;-
97 return count++;
never executed: return count++;
0
98 }-
99-
100 void prepend(T *item) {-
101 item->next = first;-
102 first = item;-
103 if (!last)
!lastDescription
TRUEnever evaluated
FALSEnever evaluated
0
104 last = first;
never executed: last = first;
0
105 ++count;-
106 }
never executed: end of block
0
107-
108 template <typename Sortable, typename Base, Sortable Base::*sortMember>-
109 T *findSortedInsertionPoint(T *item) const-
110 {-
111 T *insertPos = nullptr;-
112-
113 for (T *it = first; it; it = it->next) {
itDescription
TRUEnever evaluated
FALSEnever evaluated
0
114 if (!(it->*sortMember <= item->*sortMember))
!(it->*sortMem...->*sortMember)Description
TRUEnever evaluated
FALSEnever evaluated
0
115 break;
never executed: break;
0
116 insertPos = it;-
117 }
never executed: end of block
0
118-
119 return insertPos;
never executed: return insertPos;
0
120 }-
121-
122 void insertAfter(T *insertionPoint, T *item) {-
123 if (!insertionPoint) {
!insertionPointDescription
TRUEnever evaluated
FALSEnever evaluated
0
124 prepend(item);-
125 } else if (insertionPoint == last) {
never executed: end of block
insertionPoint == lastDescription
TRUEnever evaluated
FALSEnever evaluated
0
126 append(item);-
127 } else {
never executed: end of block
0
128 item->next = insertionPoint->next;-
129 insertionPoint->next = item;-
130 ++count;-
131 }
never executed: end of block
0
132 }-
133-
134 T *unlink(T *before, T *item) {-
135 T * const newNext = item->next;-
136-
137 if (before)
beforeDescription
TRUEevaluated 20 times by 7 tests
Evaluated by:
  • tst_examples
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
FALSEevaluated 128 times by 16 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qquickanimationcontroller
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
20-128
138 before->next = newNext;
executed 20 times by 7 tests: before->next = newNext;
Executed by:
  • tst_examples
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
20
139 else-
140 first = newNext;
executed 128 times by 16 tests: first = newNext;
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qquickanimationcontroller
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
128
141-
142 if (item == last) {
item == lastDescription
TRUEevaluated 15 times by 7 tests
Evaluated by:
  • tst_examples
  • tst_qquickanimations
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
FALSEevaluated 133 times by 15 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qquickanimationcontroller
  • tst_qquickdraghandler
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
15-133
143 if (newNext)
newNextDescription
TRUEnever evaluated
FALSEevaluated 15 times by 7 tests
Evaluated by:
  • tst_examples
  • tst_qquickanimations
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
0-15
144 last = newNext;
never executed: last = newNext;
0
145 else-
146 last = first;
executed 15 times by 7 tests: last = first;
Executed by:
  • tst_examples
  • tst_qquickanimations
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
15
147 }-
148-
149 --count;-
150 return newNext;
executed 148 times by 16 tests: return newNext;
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qquickanimationcontroller
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
148
151 }-
152-
153 T *slowAt(int index) const-
154 {-
155 T *result = first;-
156 while (index > 0 && result) {
index > 0Description
TRUEevaluated 2182 times by 45 tests
Evaluated by:
  • tst_examples
  • tst_flickableinterop
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlexpression
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlstatemachine
  • tst_qqmltypeloader
  • tst_qqmlvaluetypeproviders
  • tst_qqmlvaluetypes
  • tst_qquickanimationcontroller
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickdroparea
  • tst_qquickflickable
  • tst_qquickfocusscope
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquickitem2
  • tst_qquickitemparticle
  • ...
FALSEevaluated 2037 times by 83 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_qmlcachegen
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllistreference
  • tst_qqmllocale
  • tst_qqmlmoduleplugin
  • tst_qqmlnativeconnector
  • tst_qqmlnotifier
  • ...
resultDescription
TRUEevaluated 2182 times by 45 tests
Evaluated by:
  • tst_examples
  • tst_flickableinterop
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlexpression
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlstatemachine
  • tst_qqmltypeloader
  • tst_qqmlvaluetypeproviders
  • tst_qqmlvaluetypes
  • tst_qquickanimationcontroller
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickdroparea
  • tst_qquickflickable
  • tst_qquickfocusscope
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquickitem2
  • tst_qquickitemparticle
  • ...
FALSEnever evaluated
0-2182
157 result = result->next;-
158 --index;-
159 }
executed 2182 times by 45 tests: end of block
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlexpression
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlstatemachine
  • tst_qqmltypeloader
  • tst_qqmlvaluetypeproviders
  • tst_qqmlvaluetypes
  • tst_qquickanimationcontroller
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickdroparea
  • tst_qquickflickable
  • tst_qquickfocusscope
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquickitem2
  • tst_qquickitemparticle
  • ...
2182
160 return result;
executed 2037 times by 83 tests: return result;
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_qmlcachegen
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllistreference
  • tst_qqmllocale
  • tst_qqmlmoduleplugin
  • tst_qqmlnativeconnector
  • tst_qqmlnotifier
  • ...
2037
161 }-
162-
163 struct Iterator {-
164 T *ptr;-
165-
166 explicit Iterator(T *p) : ptr(p) {}
executed 618960 times by 142 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
618960
167-
168 T *operator->() {-
169 return ptr;
executed 490307 times by 142 tests: return ptr;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
490307
170 }-
171-
172 const T *operator->() const {-
173 return ptr;
never executed: return ptr;
0
174 }-
175-
176 T &operator*() {-
177 return *ptr;
executed 22616 times by 130 tests: return *ptr;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllistreference
  • ...
22616
178 }-
179-
180 const T &operator*() const {-
181 return *ptr;
never executed: return *ptr;
0
182 }-
183-
184 void operator++() {-
185 ptr = ptr->next;-
186 }
executed 370963 times by 142 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
370963
187-
188 bool operator==(const Iterator &rhs) const {-
189 return ptr == rhs.ptr;
never executed: return ptr == rhs.ptr;
0
190 }-
191-
192 bool operator!=(const Iterator &rhs) const {-
193 return ptr != rhs.ptr;
executed 680415 times by 142 tests: return ptr != rhs.ptr;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
680415
194 }-
195 };-
196-
197 Iterator begin() { return Iterator(first); }
executed 309464 times by 142 tests: return Iterator(first);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
309464
198 Iterator end() { return Iterator(nullptr); }
executed 309496 times by 142 tests: return Iterator(nullptr);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
309496
199};-
200-
201template <typename T>-
202class FixedPoolArray-
203{-
204 T *data;-
205public:-
206 int count = 0;-
207-
208 FixedPoolArray()-
209 : data(nullptr)-
210-
211 {}
executed 1500 times by 33 tests: end of block
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qmldiskcache
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquickitem2
  • tst_qquickitemlayer
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • ...
1500
212-
213 void allocate(QQmlJS::MemoryPool *pool, int size)-
214 {-
215 count = size;-
216 data = reinterpret_cast<T*>(pool->allocate(count * sizeof(T)));-
217 }
never executed: end of block
0
218-
219 void allocate(QQmlJS::MemoryPool *pool, const QVector<T> &vector)-
220 {-
221 count = vector.count();-
222 data = reinterpret_cast<T*>(pool->allocate(count * sizeof(T)));-
223-
224 if (QTypeInfo<T>::isComplex) {
QTypeInfo<T>::isComplexDescription
TRUEnever evaluated
FALSEevaluated 51548 times by 134 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • ...
0-51548
225 for (int i = 0; i < count; ++i)
i < countDescription
TRUEnever evaluated
FALSEnever evaluated
0
226 new (data + i) T(vector.at(i));
never executed: new (data + i) T(vector.at(i));
0
227 } else {
never executed: end of block
0
228 memcpy(data, static_cast<const void*>(vector.constData()), count * sizeof(T));-
229 }
executed 51548 times by 134 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • ...
51548
230 }-
231-
232 template <typename Container>-
233 void allocate(QQmlJS::MemoryPool *pool, const Container &container)-
234 {-
235 count = container.count();-
236 data = reinterpret_cast<T*>(pool->allocate(count * sizeof(T)));-
237 typename Container::ConstIterator it = container.constBegin();-
238 for (int i = 0; i < count; ++i)
i < countDescription
TRUEevaluated 4099 times by 116 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllistreference
  • tst_qqmlmetaobject
  • tst_qqmlmetatype
  • tst_qqmlmoduleplugin
  • tst_qqmlnativeconnector
  • ...
FALSEevaluated 49594 times by 142 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
4099-49594
239 new (data + i) T(*it++);
executed 4099 times by 116 tests: new (data + i) T(*it++);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllistreference
  • tst_qqmlmetaobject
  • tst_qqmlmetatype
  • tst_qqmlmoduleplugin
  • tst_qqmlnativeconnector
  • ...
4099
240 }
executed 49594 times by 142 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
49594
241-
242 const T &at(int index) const {-
243 Q_ASSERT(index >= 0 && index < count);-
244 return data[index];
executed 4115 times by 116 tests: return data[index];
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllistreference
  • tst_qqmlmetaobject
  • tst_qqmlmetatype
  • tst_qqmlmoduleplugin
  • tst_qqmlnativeconnector
  • ...
4115
245 }-
246-
247 T &operator[](int index) {-
248 Q_ASSERT(index >= 0 && index < count);-
249 return data[index];
never executed: return data[index];
0
250 }-
251-
252-
253 int indexOf(const T &value) const {-
254 for (int i = 0; i < count; ++i)
i < countDescription
TRUEnever evaluated
FALSEnever evaluated
0
255 if (data[i] == value)
data[i] == valueDescription
TRUEnever evaluated
FALSEnever evaluated
0
256 return i;
never executed: return i;
0
257 return -1;
never executed: return -1;
0
258 }-
259-
260 const T *begin() const { return data; }
executed 3763 times by 67 tests: return data;
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_parserstress
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllocale
  • tst_qqmlmetaobject
  • tst_qqmlmetatype
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlproperty
  • tst_qqmlqt
  • tst_qqmlsettings
  • tst_qqmltranslation
  • ...
3763
261 const T *end() const { return data + count; }
executed 3161 times by 55 tests: return data + count;
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_parserstress
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllocale
  • tst_qqmlmetaobject
  • tst_qqmlmetatype
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlproperty
  • tst_qqmlqt
  • tst_qqmlsettings
  • tst_qqmltranslation
  • ...
3161
262};-
263-
264struct Object;-
265-
266struct EnumValue : public QV4::CompiledData::EnumValue-
267{-
268 EnumValue *next;-
269};-
270-
271struct Enum-
272{-
273 int nameIndex;-
274 QV4::CompiledData::Location location;-
275 PoolList<EnumValue> *enumValues;-
276-
277 int enumValueCount() const { return enumValues->count; }
executed 2 times by 1 test: return enumValues->count;
Executed by:
  • tst_qmlcachegen
2
278 PoolList<EnumValue>::Iterator enumValuesBegin() const { return enumValues->begin(); }
executed 2 times by 1 test: return enumValues->begin();
Executed by:
  • tst_qmlcachegen
2
279 PoolList<EnumValue>::Iterator enumValuesEnd() const { return enumValues->end(); }
executed 2 times by 1 test: return enumValues->end();
Executed by:
  • tst_qmlcachegen
2
280-
281 Enum *next;-
282};-
283-
284-
285struct SignalParameter : public QV4::CompiledData::Parameter-
286{-
287 SignalParameter *next;-
288};-
289-
290struct Signal-
291{-
292 int nameIndex;-
293 QV4::CompiledData::Location location;-
294 PoolList<SignalParameter> *parameters;-
295-
296 QStringList parameterStringList(const QV4::Compiler::StringTableGenerator *stringPool) const;-
297-
298 int parameterCount() const { return parameters->count; }
executed 69 times by 16 tests: return parameters->count;
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_qmlcachegen
  • tst_qqmlconnections
  • tst_qqmlecmascript
  • tst_qqmlincubator
  • tst_qqmlmetaobject
  • tst_qqmlqt
  • tst_qqmlxmlhttprequest
  • tst_qquickaccessible
  • tst_qquickdraghandler
  • tst_qquickgridview
  • tst_qquickloader
  • tst_qquicktaphandler
  • tst_qquickworkerscript
  • tst_scenegraph
69
299 PoolList<SignalParameter>::Iterator parametersBegin() const { return parameters->begin(); }
executed 24 times by 6 tests: return parameters->begin();
Executed by:
  • tst_examples
  • tst_qmlcachegen
  • tst_qqmlconnections
  • tst_qqmlecmascript
  • tst_qqmlmetaobject
  • tst_qquickgridview
24
300 PoolList<SignalParameter>::Iterator parametersEnd() const { return parameters->end(); }
executed 24 times by 6 tests: return parameters->end();
Executed by:
  • tst_examples
  • tst_qmlcachegen
  • tst_qqmlconnections
  • tst_qqmlecmascript
  • tst_qqmlmetaobject
  • tst_qquickgridview
24
301-
302 Signal *next;-
303};-
304-
305struct Property : public QV4::CompiledData::Property-
306{-
307 Property *next;-
308};-
309-
310struct Binding : public QV4::CompiledData::Binding-
311{-
312 // The offset in the source file where the binding appeared. This is used for sorting to ensure-
313 // that assignments to list properties are done in the correct order. We use the offset here instead-
314 // of Binding::location as the latter has limited precision.-
315 quint32 offset;-
316 // Binding's compiledScriptIndex is index in object's functionsAndExpressions-
317 Binding *next;-
318};-
319-
320struct Alias : public QV4::CompiledData::Alias-
321{-
322 Alias *next;-
323};-
324-
325struct Function-
326{-
327 QV4::CompiledData::Location location;-
328 int nameIndex;-
329 quint32 index; // index in parsedQML::functions-
330 FixedPoolArray<int> formals;-
331-
332 // --- QQmlPropertyCacheCreator interface-
333 const int *formalsBegin() const { return formals.begin(); }
executed 3161 times by 55 tests: return formals.begin();
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_parserstress
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllocale
  • tst_qqmlmetaobject
  • tst_qqmlmetatype
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlproperty
  • tst_qqmlqt
  • tst_qqmlsettings
  • tst_qqmltranslation
  • ...
3161
334 const int *formalsEnd() const { return formals.end(); }
executed 3161 times by 55 tests: return formals.end();
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_parserstress
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • tst_qqmllistmodelworkerscript
  • tst_qqmllocale
  • tst_qqmlmetaobject
  • tst_qqmlmetatype
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlproperty
  • tst_qqmlqt
  • tst_qqmlsettings
  • tst_qqmltranslation
  • ...
3161
335 // ----
336-
337 Function *next;-
338};-
339-
340struct Q_QML_PRIVATE_EXPORT CompiledFunctionOrExpression-
341{-
342 CompiledFunctionOrExpression()-
343 {}-
344-
345 QQmlJS::AST::Node *parentNode = nullptr; // FunctionDeclaration, Statement or Expression-
346 QQmlJS::AST::Node *node = nullptr; // FunctionDeclaration, Statement or Expression-
347 quint32 nameIndex = 0;-
348 bool disableAcceleratedLookups = false;-
349 CompiledFunctionOrExpression *next = nullptr;-
350};-
351-
352struct Q_QML_PRIVATE_EXPORT Object-
353{-
354 Q_DECLARE_TR_FUNCTIONS(Object)-
355public:-
356 quint32 inheritedTypeNameIndex;-
357 quint32 idNameIndex;-
358 int id;-
359 int indexOfDefaultPropertyOrAlias;-
360 bool defaultPropertyIsAlias;-
361 quint32 flags;-
362-
363 QV4::CompiledData::Location location;-
364 QV4::CompiledData::Location locationOfIdProperty;-
365-
366 const Property *firstProperty() const { return properties->first; }
executed 20 times by 3 tests: return properties->first;
Executed by:
  • tst_qqmlecmascript
  • tst_qquickloader
  • tst_qquickpathview
20
367 int propertyCount() const { return properties->count; }
executed 84976 times by 142 tests: return properties->count;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
84976
368 Alias *firstAlias() const { return aliases->first; }
executed 326 times by 35 tests: return aliases->first;
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_qmldiskcache
  • tst_qqmlcomponent
  • tst_qqmlecmascript
  • tst_qqmlmetaobject
  • tst_qqmlproperty
  • tst_qqmlqt
  • tst_qqmlsettings
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickaccessible
  • tst_qquickanimations
  • tst_qquickbehaviors
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickfontloader
  • tst_qquickimage
  • tst_qquickitem
  • tst_qquickitem2
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickmousearea
  • tst_qquickrectangle
  • ...
326
369 int aliasCount() const { return aliases->count; }
executed 152819 times by 142 tests: return aliases->count;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
152819
370 const Enum *firstEnum() const { return qmlEnums->first; }
never executed: return qmlEnums->first;
0
371 int enumCount() const { return qmlEnums->count; }
executed 70946 times by 142 tests: return qmlEnums->count;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
70946
372 const Signal *firstSignal() const { return qmlSignals->first; }
executed 20 times by 3 tests: return qmlSignals->first;
Executed by:
  • tst_qqmlecmascript
  • tst_qquickloader
  • tst_qquickpathview
20
373 int signalCount() const { return qmlSignals->count; }
executed 76122 times by 142 tests: return qmlSignals->count;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
76122
374 Binding *firstBinding() const { return bindings->first; }
executed 709457 times by 142 tests: return bindings->first;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
709457
375 int bindingCount() const { return bindings->count; }
executed 2622 times by 42 tests: return bindings->count;
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qmldiskcache
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickbehaviors
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquickitem
  • tst_qquickitem2
  • tst_qquickitemlayer
  • ...
2622
376 const Function *firstFunction() const { return functions->first; }
never executed: return functions->first;
0
377 int functionCount() const { return functions->count; }
executed 71503 times by 142 tests: return functions->count;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
71503
378-
379 PoolList<Binding>::Iterator bindingsBegin() const { return bindings->begin(); }
executed 204807 times by 142 tests: return bindings->begin();
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
204807
380 PoolList<Binding>::Iterator bindingsEnd() const { return bindings->end(); }
executed 204841 times by 142 tests: return bindings->end();
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
204841
381 PoolList<Property>::Iterator propertiesBegin() const { return properties->begin(); }
executed 81464 times by 142 tests: return properties->begin();
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
81464
382 PoolList<Property>::Iterator propertiesEnd() const { return properties->end(); }
executed 81464 times by 142 tests: return properties->end();
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
81464
383 PoolList<Alias>::Iterator aliasesBegin() const { return aliases->begin(); }
executed 9367 times by 102 tests: return aliases->begin();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
9367
384 PoolList<Alias>::Iterator aliasesEnd() const { return aliases->end(); }
executed 9365 times by 102 tests: return aliases->end();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
9365
385 PoolList<Enum>::Iterator enumsBegin() const { return qmlEnums->begin(); }
executed 4600 times by 102 tests: return qmlEnums->begin();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
4600
386 PoolList<Enum>::Iterator enumsEnd() const { return qmlEnums->end(); }
executed 4600 times by 102 tests: return qmlEnums->end();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
4600
387 PoolList<Signal>::Iterator signalsBegin() const { return qmlSignals->begin(); }
executed 4600 times by 102 tests: return qmlSignals->begin();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
4600
388 PoolList<Signal>::Iterator signalsEnd() const { return qmlSignals->end(); }
executed 4600 times by 102 tests: return qmlSignals->end();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
4600
389 PoolList<Function>::Iterator functionsBegin() const { return functions->begin(); }
executed 4600 times by 102 tests: return functions->begin();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
4600
390 PoolList<Function>::Iterator functionsEnd() const { return functions->end(); }
executed 4600 times by 102 tests: return functions->end();
Executed by:
  • tst_bindingdependencyapi
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • tst_qqmlitemmodels
  • tst_qqmllistmodel
  • ...
4600
391-
392 // If set, then declarations for this object (and init bindings for these) should go into the-
393 // specified object. Used for declarations inside group properties.-
394 Object *declarationsOverride;-
395-
396 void init(QQmlJS::MemoryPool *pool, int typeNameIndex, int idIndex, const QQmlJS::AST::SourceLocation &location = QQmlJS::AST::SourceLocation());-
397-
398 QString appendEnum(Enum *enumeration);-
399 QString appendSignal(Signal *signal);-
400 QString appendProperty(Property *prop, const QString &propertyName, bool isDefaultProperty, const QQmlJS::AST::SourceLocation &defaultToken, QQmlJS::AST::SourceLocation *errorLocation);-
401 QString appendAlias(Alias *prop, const QString &aliasName, bool isDefaultProperty, const QQmlJS::AST::SourceLocation &defaultToken, QQmlJS::AST::SourceLocation *errorLocation);-
402 void appendFunction(QmlIR::Function *f);-
403-
404 QString appendBinding(Binding *b, bool isListBinding);-
405 Binding *findBinding(quint32 nameIndex) const;-
406 Binding *unlinkBinding(Binding *before, Binding *binding) { return bindings->unlink(before, binding); }
executed 148 times by 16 tests: return bindings->unlink(before, binding);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qquickanimationcontroller
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspritesequence
  • tst_qquickvisualdatamodel
148
407 void insertSorted(Binding *b);-
408 QString bindingAsString(Document *doc, int scriptIndex) const;-
409-
410 PoolList<CompiledFunctionOrExpression> *functionsAndExpressions;-
411 FixedPoolArray<int> runtimeFunctionIndices;-
412-
413 FixedPoolArray<quint32> namedObjectsInComponent;-
414 int namedObjectsInComponentCount() const { return namedObjectsInComponent.count; }
executed 305 times by 35 tests: return namedObjectsInComponent.count;
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_qmldiskcache
  • tst_qqmlcomponent
  • tst_qqmlecmascript
  • tst_qqmlmetaobject
  • tst_qqmlproperty
  • tst_qqmlqt
  • tst_qqmlsettings
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickaccessible
  • tst_qquickanimations
  • tst_qquickbehaviors
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickfontloader
  • tst_qquickimage
  • tst_qquickitem
  • tst_qquickitem2
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickmousearea
  • tst_qquickrectangle
  • ...
305
415 const quint32 *namedObjectsInComponentTable() const { return namedObjectsInComponent.begin(); }
executed 602 times by 35 tests: return namedObjectsInComponent.begin();
Executed by:
  • tst_examples
  • tst_flickableinterop
  • tst_qmldiskcache
  • tst_qqmlcomponent
  • tst_qqmlecmascript
  • tst_qqmlmetaobject
  • tst_qqmlproperty
  • tst_qqmlqt
  • tst_qqmlsettings
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickaccessible
  • tst_qquickanimations
  • tst_qquickbehaviors
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickfontloader
  • tst_qquickimage
  • tst_qquickitem
  • tst_qquickitem2
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickmousearea
  • tst_qquickrectangle
  • ...
602
416-
417private:-
418 friend struct IRLoader;-
419-
420 PoolList<Property> *properties;-
421 PoolList<Alias> *aliases;-
422 PoolList<Enum> *qmlEnums;-
423 PoolList<Signal> *qmlSignals;-
424 PoolList<Binding> *bindings;-
425 PoolList<Function> *functions;-
426};-
427-
428struct Q_QML_PRIVATE_EXPORT Pragma-
429{-
430 enum PragmaType {-
431 PragmaSingleton = 0x1-
432 };-
433 quint32 type;-
434-
435 QV4::CompiledData::Location location;-
436};-
437-
438struct Q_QML_PRIVATE_EXPORT Document-
439{-
440 Document(bool debugMode);-
441 QString code;-
442 QQmlJS::Engine jsParserEngine;-
443 QV4::Compiler::Module jsModule;-
444 QList<const QV4::CompiledData::Import *> imports;-
445 QList<Pragma*> pragmas;-
446 QQmlJS::AST::UiProgram *program;-
447 QVector<Object*> objects;-
448 QV4::Compiler::JSUnitGenerator jsGenerator;-
449-
450 QQmlRefPointer<QV4::CompiledData::CompilationUnit> javaScriptCompilationUnit;-
451-
452 int registerString(const QString &str) { return jsGenerator.registerString(str); }
executed 58 times by 7 tests: return jsGenerator.registerString(str);
Executed by:
  • tst_qqmlcomponent
  • tst_qqmlmoduleplugin
  • tst_qqmltypeloader
  • tst_qquickanimatedimage
  • tst_qquickloader
  • tst_qquicktextedit
  • tst_qquicktextinput
58
453 QString stringAt(int index) const { return jsGenerator.stringForIndex(index); }
executed 678605 times by 142 tests: return jsGenerator.stringForIndex(index);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
678605
454-
455 static void removeScriptPragmas(QString &script);-
456};-
457-
458class Q_QML_PRIVATE_EXPORT ScriptDirectivesCollector : public QQmlJS::Directives-
459{-
460 QmlIR::Document *document;-
461 QQmlJS::Engine *engine;-
462 QV4::Compiler::JSUnitGenerator *jsGenerator;-
463-
464public:-
465 ScriptDirectivesCollector(QmlIR::Document *doc);-
466-
467 void pragmaLibrary() override;-
468 void importFile(const QString &jsfile, const QString &module, int lineNumber, int column) override;-
469 void importModule(const QString &uri, const QString &version, const QString &module, int lineNumber, int column) override;-
470};-
471-
472struct Q_QML_PRIVATE_EXPORT IRBuilder : public QQmlJS::AST::Visitor-
473{-
474 Q_DECLARE_TR_FUNCTIONS(QQmlCodeGenerator)-
475public:-
476 IRBuilder(const QSet<QString> &illegalNames);-
477 bool generateFromQml(const QString &code, const QString &url, Document *output);-
478-
479 static bool isSignalPropertyName(const QString &name);-
480-
481 using QQmlJS::AST::Visitor::visit;-
482 using QQmlJS::AST::Visitor::endVisit;-
483-
484 bool visit(QQmlJS::AST::UiArrayMemberList *ast) override;-
485 bool visit(QQmlJS::AST::UiImport *ast) override;-
486 bool visit(QQmlJS::AST::UiPragma *ast) override;-
487 bool visit(QQmlJS::AST::UiHeaderItemList *ast) override;-
488 bool visit(QQmlJS::AST::UiObjectInitializer *ast) override;-
489 bool visit(QQmlJS::AST::UiObjectMemberList *ast) override;-
490 bool visit(QQmlJS::AST::UiParameterList *ast) override;-
491 bool visit(QQmlJS::AST::UiProgram *) override;-
492 bool visit(QQmlJS::AST::UiQualifiedId *ast) override;-
493 bool visit(QQmlJS::AST::UiArrayBinding *ast) override;-
494 bool visit(QQmlJS::AST::UiObjectBinding *ast) override;-
495 bool visit(QQmlJS::AST::UiObjectDefinition *ast) override;-
496 bool visit(QQmlJS::AST::UiEnumDeclaration *ast) override;-
497 bool visit(QQmlJS::AST::UiPublicMember *ast) override;-
498 bool visit(QQmlJS::AST::UiScriptBinding *ast) override;-
499 bool visit(QQmlJS::AST::UiSourceElement *ast) override;-
500-
501 void accept(QQmlJS::AST::Node *node);-
502-
503 // returns index in _objects-
504 bool defineQMLObject(int *objectIndex, QQmlJS::AST::UiQualifiedId *qualifiedTypeNameId, const QQmlJS::AST::SourceLocation &location, QQmlJS::AST::UiObjectInitializer *initializer, Object *declarationsOverride = nullptr);-
505 bool defineQMLObject(int *objectIndex, QQmlJS::AST::UiObjectDefinition *node, Object *declarationsOverride = nullptr)-
506 { return defineQMLObject(objectIndex, node->qualifiedTypeNameId, node->qualifiedTypeNameId->firstSourceLocation(), node->initializer, declarationsOverride); }
never executed: return defineQMLObject(objectIndex, node->qualifiedTypeNameId, node->qualifiedTypeNameId->firstSourceLocation(), node->initializer, declarationsOverride);
0
507-
508 static QString asString(QQmlJS::AST::UiQualifiedId *node);-
509 QStringRef asStringRef(QQmlJS::AST::Node *node);-
510 static void extractVersion(QStringRef string, int *maj, int *min);-
511 QStringRef textRefAt(const QQmlJS::AST::SourceLocation &loc) const-
512 { return QStringRef(&sourceCode, loc.offset, loc.length); }
never executed: return QStringRef(&sourceCode, loc.offset, loc.length);
0
513 QStringRef textRefAt(const QQmlJS::AST::SourceLocation &first,-
514 const QQmlJS::AST::SourceLocation &last) const;-
515-
516 void setBindingValue(QV4::CompiledData::Binding *binding, QQmlJS::AST::Statement *statement, AST::Node *parentNode);-
517 void tryGeneratingTranslationBinding(const QStringRef &base, QQmlJS::AST::ArgumentList *args, QV4::CompiledData::Binding *binding);-
518-
519 void appendBinding(QQmlJS::AST::UiQualifiedId *name, QQmlJS::AST::Statement *value, AST::Node *parentNode);-
520 void appendBinding(QQmlJS::AST::UiQualifiedId *name, int objectIndex, bool isOnAssignment = false);-
521 void appendBinding(const QQmlJS::AST::SourceLocation &qualifiedNameLocation, const QQmlJS::AST::SourceLocation &nameLocation, quint32 propertyNameIndex, QQmlJS::AST::Statement *value, AST::Node *parentNode);-
522 void appendBinding(const QQmlJS::AST::SourceLocation &qualifiedNameLocation, const QQmlJS::AST::SourceLocation &nameLocation, quint32 propertyNameIndex, int objectIndex, bool isListItem = false, bool isOnAssignment = false);-
523-
524 bool appendAlias(QQmlJS::AST::UiPublicMember *node);-
525-
526 Object *bindingsTarget() const;-
527-
528 bool setId(const QQmlJS::AST::SourceLocation &idLocation, QQmlJS::AST::Statement *value);-
529-
530 // resolves qualified name (font.pixelSize for example) and returns the last name along-
531 // with the object any right-hand-side of a binding should apply to.-
532 bool resolveQualifiedId(QQmlJS::AST::UiQualifiedId **nameToResolve, Object **object, bool onAssignment = false);-
533-
534 void recordError(const QQmlJS::AST::SourceLocation &location, const QString &description);-
535-
536 quint32 registerString(const QString &str) const { return jsGenerator->registerString(str); }
never executed: return jsGenerator->registerString(str);
0
537 template <typename _Tp> _Tp *New() { return pool->New<_Tp>(); }
never executed: return pool->New<_Tp>();
0
538-
539 QString stringAt(int index) const { return jsGenerator->stringForIndex(index); }
never executed: return jsGenerator->stringForIndex(index);
0
540-
541 static bool isStatementNodeScript(QQmlJS::AST::Statement *statement);-
542 static bool isRedundantNullInitializerForPropertyDeclaration(Property *property, QQmlJS::AST::Statement *statement);-
543-
544 QString sanityCheckFunctionNames(Object *obj, const QSet<QString> &illegalNames, QQmlJS::AST::SourceLocation *errorLocation);-
545-
546 QList<QQmlJS::DiagnosticMessage> errors;-
547-
548 QSet<QString> illegalNames;-
549-
550 QList<const QV4::CompiledData::Import *> _imports;-
551 QList<Pragma*> _pragmas;-
552 QVector<Object*> _objects;-
553-
554 QV4::CompiledData::TypeReferenceMap _typeReferences;-
555-
556 Object *_object;-
557 Property *_propertyDeclaration;-
558-
559 QQmlJS::MemoryPool *pool;-
560 QString sourceCode;-
561 QV4::Compiler::JSUnitGenerator *jsGenerator;-
562};-
563-
564struct Q_QML_PRIVATE_EXPORT QmlUnitGenerator-
565{-
566 QV4::CompiledData::Unit *generate(Document &output, const QV4::CompiledData::DependentTypesHasher &dependencyHasher = QV4::CompiledData::DependentTypesHasher());-
567-
568private:-
569 typedef bool (Binding::*BindingFilter)() const;-
570 char *writeBindings(char *bindingPtr, const Object *o, BindingFilter filter) const;-
571};-
572-
573#ifndef V4_BOOTSTRAP-
574struct Q_QML_EXPORT PropertyResolver-
575{-
576 PropertyResolver(const QQmlRefPointer<QQmlPropertyCache> &cache)-
577 : cache(cache)-
578 {}-
579-
580 QQmlPropertyData *property(int index) const-
581 {-
582 return cache->property(index);-
583 }-
584-
585 enum RevisionCheck {-
586 CheckRevision,-
587 IgnoreRevision-
588 };-
589-
590 QQmlPropertyData *property(const QString &name, bool *notInRevision = nullptr, RevisionCheck check = CheckRevision) const;-
591-
592 // This code must match the semantics of QQmlPropertyPrivate::findSignalByName-
593 QQmlPropertyData *signal(const QString &name, bool *notInRevision) const;-
594-
595 QQmlRefPointer<QQmlPropertyCache> cache;-
596};-
597#endif-
598-
599struct Q_QML_PRIVATE_EXPORT JSCodeGen : public QV4::Compiler::Codegen-
600{-
601 JSCodeGen(const QString &sourceCode, QV4::Compiler::JSUnitGenerator *jsUnitGenerator, QV4::Compiler::Module *jsModule,-
602 QQmlJS::Engine *jsEngine, QQmlJS::AST::UiProgram *qmlRoot,-
603 QQmlTypeNameCache *imports, const QV4::Compiler::StringTableGenerator *stringPool, const QSet<QString> &globalNames);-
604-
605 struct IdMapping-
606 {-
607 QString name;-
608 int idIndex;-
609 QQmlPropertyCache *type;-
610 };-
611 typedef QVector<IdMapping> ObjectIdMapping;-
612-
613 void beginContextScope(const ObjectIdMapping &objectIds, QQmlPropertyCache *contextObject);-
614 void beginObjectScope(QQmlPropertyCache *scopeObject);-
615-
616 // Returns mapping from input functions to index in IR::Module::functions / compiledData->runtimeFunctions-
617 QVector<int> generateJSCodeForFunctionsAndBindings(const QList<CompiledFunctionOrExpression> &functions);-
618-
619 int defineFunction(const QString &name, AST::Node *ast,-
620 AST::FormalParameterList *formals,-
621 AST::StatementList *body) override;-
622-
623protected:-
624 void beginFunctionBodyHook() override;-
625 Reference fallbackNameLookup(const QString &name) override;-
626-
627private:-
628 // returns nullptr if lookup needs to happen by name-
629 QQmlPropertyData *lookupQmlCompliantProperty(QQmlPropertyCache *cache, const QString &name);-
630-
631 QString sourceCode;-
632 QQmlJS::Engine *jsEngine; // needed for memory pool-
633 QQmlJS::AST::UiProgram *qmlRoot;-
634 QQmlTypeNameCache *imports;-
635 const QV4::Compiler::StringTableGenerator *stringPool;-
636-
637 bool _disableAcceleratedLookups;-
638 ObjectIdMapping _idObjects;-
639 QQmlPropertyCache *_contextObject;-
640 QQmlPropertyCache *_scopeObject;-
641 int _qmlContextSlot;-
642 int _importedScriptsSlot;-
643 QSet<QString> m_globalNames;-
644};-
645-
646struct Q_QML_PRIVATE_EXPORT IRLoader {-
647 IRLoader(const QV4::CompiledData::Unit *unit, QmlIR::Document *output);-
648-
649 void load();-
650-
651private:-
652 QmlIR::Object *loadObject(const QV4::CompiledData::Object *serializedObject);-
653-
654 template <typename _Tp> _Tp *New() { return pool->New<_Tp>(); }
never executed: return pool->New<_Tp>();
0
655-
656 const QV4::CompiledData::Unit *unit;-
657 QmlIR::Document *output;-
658 QQmlJS::MemoryPool *pool;-
659};-
660-
661} // namespace QmlIR-
662-
663struct QQmlCompileError-
664{-
665 QQmlCompileError() {}-
666 QQmlCompileError(const QV4::CompiledData::Location &location, const QString &description)-
667 : location(location), description(description) {}
executed 64 times by 11 tests: end of block
Executed by:
  • tst_qqmlconnections
  • tst_qqmlecmascript
  • tst_qqmllistmodel
  • tst_qqmlpropertymap
  • tst_qqmlvaluetypes
  • tst_qquickanimatedimage
  • tst_qquickanimations
  • tst_qquickstates
  • tst_qquicktextedit
  • tst_qquickview
  • tst_qquickwidget
64
668 QV4::CompiledData::Location location;-
669 QString description;-
670-
671 bool isSet() const { return !description.isEmpty(); }
executed 492088 times by 142 tests: return !description.isEmpty();
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugjs
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • tst_qqmlenginedebugservice
  • tst_qqmlexpression
  • tst_qqmlfileselector
  • tst_qqmlimport
  • tst_qqmlincubator
  • tst_qqmlinfo
  • tst_qqmlinstantiator
  • ...
492088
672};-
673-
674QT_END_NAMESPACE-
675-
676#endif // QQMLIRBUILDER_P_H-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.2.0