Absolute File Name: | /home/qt/qt5_coco/qt5/qtbase/src/corelib/json/qjsonarray.cpp |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||||||||
2 | - | |||||||||||||||||||
3 | - | |||||||||||||||||||
4 | QJsonArray::QJsonArray() | - | ||||||||||||||||||
5 | : d(0), a(0) | - | ||||||||||||||||||
6 | { | - | ||||||||||||||||||
7 | } executed 42110 times by 117 tests: end of block Executed by:
| 42110 | ||||||||||||||||||
8 | QJsonArray::QJsonArray(QJsonPrivate::Data *data, QJsonPrivate::Array *array) | - | ||||||||||||||||||
9 | : d(data), a(array) | - | ||||||||||||||||||
10 | { | - | ||||||||||||||||||
11 | ((!(data)) ? qt_assert("data",__FILE__,157) : qt_noop()); | - | ||||||||||||||||||
12 | ((!(array)) ? qt_assert("array",__FILE__,158) : qt_noop()); | - | ||||||||||||||||||
13 | d->ref.ref(); | - | ||||||||||||||||||
14 | } executed 42001 times by 114 tests: end of block Executed by:
| 42001 | ||||||||||||||||||
15 | void QJsonArray::initialize() | - | ||||||||||||||||||
16 | { | - | ||||||||||||||||||
17 | d = 0; | - | ||||||||||||||||||
18 | a = 0; | - | ||||||||||||||||||
19 | } never executed: end of block | 0 | ||||||||||||||||||
20 | - | |||||||||||||||||||
21 | - | |||||||||||||||||||
22 | - | |||||||||||||||||||
23 | - | |||||||||||||||||||
24 | QJsonArray::~QJsonArray() | - | ||||||||||||||||||
25 | { | - | ||||||||||||||||||
26 | if (d
| 2-42449 | ||||||||||||||||||
27 | delete d; executed 2 times by 1 test: delete d; Executed by:
| 2 | ||||||||||||||||||
28 | } executed 84597 times by 117 tests: end of block Executed by:
| 84597 | ||||||||||||||||||
29 | - | |||||||||||||||||||
30 | - | |||||||||||||||||||
31 | - | |||||||||||||||||||
32 | - | |||||||||||||||||||
33 | - | |||||||||||||||||||
34 | - | |||||||||||||||||||
35 | - | |||||||||||||||||||
36 | QJsonArray::QJsonArray(const QJsonArray &other) | - | ||||||||||||||||||
37 | { | - | ||||||||||||||||||
38 | d = other.d; | - | ||||||||||||||||||
39 | a = other.a; | - | ||||||||||||||||||
40 | if (d
| 45-441 | ||||||||||||||||||
41 | d->ref.ref(); executed 441 times by 2 tests: d->ref.ref(); Executed by:
| 441 | ||||||||||||||||||
42 | } executed 486 times by 5 tests: end of block Executed by:
| 486 | ||||||||||||||||||
43 | - | |||||||||||||||||||
44 | - | |||||||||||||||||||
45 | - | |||||||||||||||||||
46 | - | |||||||||||||||||||
47 | QJsonArray &QJsonArray::operator =(const QJsonArray &other) | - | ||||||||||||||||||
48 | { | - | ||||||||||||||||||
49 | if (d != other.d
| 5-41 | ||||||||||||||||||
50 | if (d
| 0-5 | ||||||||||||||||||
51 | delete d; never executed: delete d; | 0 | ||||||||||||||||||
52 | d = other.d; | - | ||||||||||||||||||
53 | if (d
| 0-5 | ||||||||||||||||||
54 | d->ref.ref(); executed 5 times by 1 test: d->ref.ref(); Executed by:
| 5 | ||||||||||||||||||
55 | } executed 5 times by 1 test: end of block Executed by:
| 5 | ||||||||||||||||||
56 | a = other.a; | - | ||||||||||||||||||
57 | - | |||||||||||||||||||
58 | return executed 46 times by 2 tests: *this;return *this; Executed by:
executed 46 times by 2 tests: return *this; Executed by:
| 46 | ||||||||||||||||||
59 | } | - | ||||||||||||||||||
60 | QJsonArray QJsonArray::fromStringList(const QStringList &list) | - | ||||||||||||||||||
61 | { | - | ||||||||||||||||||
62 | QJsonArray array; | - | ||||||||||||||||||
63 | for (QStringList::const_iterator it = list.constBegin(); it != list.constEnd()
| 0 | ||||||||||||||||||
64 | array.append(QJsonValue(*it)); never executed: array.append(QJsonValue(*it)); | 0 | ||||||||||||||||||
65 | return never executed: array;return array; never executed: return array; | 0 | ||||||||||||||||||
66 | } | - | ||||||||||||||||||
67 | QJsonArray QJsonArray::fromVariantList(const QVariantList &list) | - | ||||||||||||||||||
68 | { | - | ||||||||||||||||||
69 | QJsonArray array; | - | ||||||||||||||||||
70 | if (list.isEmpty()
| 0 | ||||||||||||||||||
71 | return never executed: array;return array; never executed: return array; | 0 | ||||||||||||||||||
72 | - | |||||||||||||||||||
73 | array.detach2(1024); | - | ||||||||||||||||||
74 | - | |||||||||||||||||||
75 | QVector<QJsonPrivate::Value> values; | - | ||||||||||||||||||
76 | values.resize(list.size()); | - | ||||||||||||||||||
77 | QJsonPrivate::Value *valueData = values.data(); | - | ||||||||||||||||||
78 | uint currentOffset = sizeof(QJsonPrivate::Base); | - | ||||||||||||||||||
79 | - | |||||||||||||||||||
80 | for (int i = 0; i < list.size()
| 0 | ||||||||||||||||||
81 | QJsonValue val = QJsonValue::fromVariant(list.at(i)); | - | ||||||||||||||||||
82 | - | |||||||||||||||||||
83 | bool latinOrIntValue; | - | ||||||||||||||||||
84 | int valueSize = QJsonPrivate::Value::requiredStorage(val, &latinOrIntValue); | - | ||||||||||||||||||
85 | - | |||||||||||||||||||
86 | if (!array.detach2(valueSize)
| 0 | ||||||||||||||||||
87 | return never executed: QJsonArray();return QJsonArray(); never executed: return QJsonArray(); | 0 | ||||||||||||||||||
88 | - | |||||||||||||||||||
89 | QJsonPrivate::Value *v = valueData + i; | - | ||||||||||||||||||
90 | v->type = (val.t == QJsonValue::Undefined
| 0 | ||||||||||||||||||
91 | v->latinOrIntValue = latinOrIntValue; | - | ||||||||||||||||||
92 | v->latinKey = false; | - | ||||||||||||||||||
93 | v->value = QJsonPrivate::Value::valueToStore(val, currentOffset); | - | ||||||||||||||||||
94 | if (valueSize
| 0 | ||||||||||||||||||
95 | QJsonPrivate::Value::copyData(val, (char *)array.a + currentOffset, latinOrIntValue); never executed: QJsonPrivate::Value::copyData(val, (char *)array.a + currentOffset, latinOrIntValue); | 0 | ||||||||||||||||||
96 | - | |||||||||||||||||||
97 | currentOffset += valueSize; | - | ||||||||||||||||||
98 | array.a->size = currentOffset; | - | ||||||||||||||||||
99 | } never executed: end of block | 0 | ||||||||||||||||||
100 | - | |||||||||||||||||||
101 | - | |||||||||||||||||||
102 | array.a->tableOffset = currentOffset; | - | ||||||||||||||||||
103 | if (!array.detach2(sizeof(QJsonPrivate::offset)*values.size())
| 0 | ||||||||||||||||||
104 | return never executed: QJsonArray();return QJsonArray(); never executed: return QJsonArray(); | 0 | ||||||||||||||||||
105 | memcpy(array.a->table(), values.constData(), values.size()*sizeof(uint)); | - | ||||||||||||||||||
106 | array.a->length = values.size(); | - | ||||||||||||||||||
107 | array.a->size = currentOffset + sizeof(QJsonPrivate::offset)*values.size(); | - | ||||||||||||||||||
108 | - | |||||||||||||||||||
109 | return never executed: array;return array; never executed: return array; | 0 | ||||||||||||||||||
110 | } | - | ||||||||||||||||||
111 | - | |||||||||||||||||||
112 | - | |||||||||||||||||||
113 | - | |||||||||||||||||||
114 | - | |||||||||||||||||||
115 | - | |||||||||||||||||||
116 | - | |||||||||||||||||||
117 | QVariantList QJsonArray::toVariantList() const | - | ||||||||||||||||||
118 | { | - | ||||||||||||||||||
119 | QVariantList list; | - | ||||||||||||||||||
120 | - | |||||||||||||||||||
121 | if (a
| 0 | ||||||||||||||||||
122 | list.reserve(a->length); | - | ||||||||||||||||||
123 | for (int i = 0; i < (int)a->length
| 0 | ||||||||||||||||||
124 | list.append(QJsonValue(d, a, a->at(i)).toVariant()); never executed: list.append(QJsonValue(d, a, a->at(i)).toVariant()); | 0 | ||||||||||||||||||
125 | } never executed: end of block | 0 | ||||||||||||||||||
126 | return never executed: list;return list; never executed: return list; | 0 | ||||||||||||||||||
127 | } | - | ||||||||||||||||||
128 | - | |||||||||||||||||||
129 | - | |||||||||||||||||||
130 | - | |||||||||||||||||||
131 | - | |||||||||||||||||||
132 | - | |||||||||||||||||||
133 | int QJsonArray::size() const | - | ||||||||||||||||||
134 | { | - | ||||||||||||||||||
135 | if (!d
| 2-42948 | ||||||||||||||||||
136 | return executed 2 times by 1 test: 0;return 0; Executed by:
executed 2 times by 1 test: return 0; Executed by:
| 2 | ||||||||||||||||||
137 | - | |||||||||||||||||||
138 | return executed 42948 times by 114 tests: (int)a->length;return (int)a->length; Executed by:
executed 42948 times by 114 tests: return (int)a->length; Executed by:
| 42948 | ||||||||||||||||||
139 | } | - | ||||||||||||||||||
140 | bool QJsonArray::isEmpty() const | - | ||||||||||||||||||
141 | { | - | ||||||||||||||||||
142 | if (!d
| 3-18 | ||||||||||||||||||
143 | return executed 18 times by 1 test: true;return true; Executed by:
executed 18 times by 1 test: return true; Executed by:
| 18 | ||||||||||||||||||
144 | - | |||||||||||||||||||
145 | return executed 3 times by 1 test: !a->length;return !a->length; Executed by:
executed 3 times by 1 test: return !a->length; Executed by:
| 3 | ||||||||||||||||||
146 | } | - | ||||||||||||||||||
147 | - | |||||||||||||||||||
148 | - | |||||||||||||||||||
149 | - | |||||||||||||||||||
150 | - | |||||||||||||||||||
151 | - | |||||||||||||||||||
152 | - | |||||||||||||||||||
153 | - | |||||||||||||||||||
154 | QJsonValue QJsonArray::at(int i) const | - | ||||||||||||||||||
155 | { | - | ||||||||||||||||||
156 | if (!a
| 0-68845 | ||||||||||||||||||
157 | return executed 2 times by 2 tests: QJsonValue(QJsonValue::Undefined);return QJsonValue(QJsonValue::Undefined); Executed by:
executed 2 times by 2 tests: return QJsonValue(QJsonValue::Undefined); Executed by:
| 2 | ||||||||||||||||||
158 | - | |||||||||||||||||||
159 | return executed 68843 times by 114 tests: QJsonValue(d, a, a->at(i));return QJsonValue(d, a, a->at(i)); Executed by:
executed 68843 times by 114 tests: return QJsonValue(d, a, a->at(i)); Executed by:
| 68843 | ||||||||||||||||||
160 | } | - | ||||||||||||||||||
161 | QJsonValue QJsonArray::first() const | - | ||||||||||||||||||
162 | { | - | ||||||||||||||||||
163 | return never executed: at(0);return at(0); never executed: return at(0); | 0 | ||||||||||||||||||
164 | } | - | ||||||||||||||||||
165 | QJsonValue QJsonArray::last() const | - | ||||||||||||||||||
166 | { | - | ||||||||||||||||||
167 | return never executed: at(a ? (a->length - 1) : 0);return at(a ? (a->length - 1) : 0); never executed: return at(a ? (a->length - 1) : 0); | 0 | ||||||||||||||||||
168 | } | - | ||||||||||||||||||
169 | void QJsonArray::prepend(const QJsonValue &value) | - | ||||||||||||||||||
170 | { | - | ||||||||||||||||||
171 | insert(0, value); | - | ||||||||||||||||||
172 | } never executed: end of block | 0 | ||||||||||||||||||
173 | - | |||||||||||||||||||
174 | - | |||||||||||||||||||
175 | - | |||||||||||||||||||
176 | - | |||||||||||||||||||
177 | - | |||||||||||||||||||
178 | - | |||||||||||||||||||
179 | void QJsonArray::append(const QJsonValue &value) | - | ||||||||||||||||||
180 | { | - | ||||||||||||||||||
181 | insert(a ? (int)a->length : 0, value); | - | ||||||||||||||||||
182 | } executed 8 times by 1 test: end of block Executed by:
| 8 | ||||||||||||||||||
183 | - | |||||||||||||||||||
184 | - | |||||||||||||||||||
185 | - | |||||||||||||||||||
186 | - | |||||||||||||||||||
187 | - | |||||||||||||||||||
188 | - | |||||||||||||||||||
189 | - | |||||||||||||||||||
190 | void QJsonArray::removeAt(int i) | - | ||||||||||||||||||
191 | { | - | ||||||||||||||||||
192 | if (!a
| 0 | ||||||||||||||||||
193 | return; never executed: return; | 0 | ||||||||||||||||||
194 | - | |||||||||||||||||||
195 | detach2(); | - | ||||||||||||||||||
196 | a->removeItems(i, 1); | - | ||||||||||||||||||
197 | ++d->compactionCounter; | - | ||||||||||||||||||
198 | if (d->compactionCounter > 32u
| 0 | ||||||||||||||||||
199 | compact(); never executed: compact(); | 0 | ||||||||||||||||||
200 | } never executed: end of block | 0 | ||||||||||||||||||
201 | QJsonValue QJsonArray::takeAt(int i) | - | ||||||||||||||||||
202 | { | - | ||||||||||||||||||
203 | if (!a
| 0 | ||||||||||||||||||
204 | return never executed: QJsonValue(QJsonValue::Undefined);return QJsonValue(QJsonValue::Undefined); never executed: return QJsonValue(QJsonValue::Undefined); | 0 | ||||||||||||||||||
205 | - | |||||||||||||||||||
206 | QJsonValue v(d, a, a->at(i)); | - | ||||||||||||||||||
207 | removeAt(i); | - | ||||||||||||||||||
208 | return never executed: v;return v; never executed: return v; | 0 | ||||||||||||||||||
209 | } | - | ||||||||||||||||||
210 | void QJsonArray::insert(int i, const QJsonValue &value) | - | ||||||||||||||||||
211 | { | - | ||||||||||||||||||
212 | ((!(i >= 0 && i <= (a ? (int)a->length : 0))) ? qt_assert("i >= 0 && i <= (a ? (int)a->length : 0)",__FILE__,482) : qt_noop()); | - | ||||||||||||||||||
213 | QJsonValue val = value; | - | ||||||||||||||||||
214 | - | |||||||||||||||||||
215 | bool compressed; | - | ||||||||||||||||||
216 | int valueSize = QJsonPrivate::Value::requiredStorage(val, &compressed); | - | ||||||||||||||||||
217 | - | |||||||||||||||||||
218 | if (!detach2(valueSize + sizeof(QJsonPrivate::Value))
| 0-8 | ||||||||||||||||||
219 | return; never executed: return; | 0 | ||||||||||||||||||
220 | - | |||||||||||||||||||
221 | if (!a->length
| 2-6 | ||||||||||||||||||
222 | a->tableOffset = sizeof(QJsonPrivate::Array); executed 2 times by 1 test: a->tableOffset = sizeof(QJsonPrivate::Array); Executed by:
| 2 | ||||||||||||||||||
223 | - | |||||||||||||||||||
224 | int valueOffset = a->reserveSpace(valueSize, i, 1, false); | - | ||||||||||||||||||
225 | if (!valueOffset
| 0-8 | ||||||||||||||||||
226 | return; never executed: return; | 0 | ||||||||||||||||||
227 | - | |||||||||||||||||||
228 | QJsonPrivate::Value &v = (*a)[i]; | - | ||||||||||||||||||
229 | v.type = (val.t == QJsonValue::Undefined
| 0-8 | ||||||||||||||||||
230 | v.latinOrIntValue = compressed; | - | ||||||||||||||||||
231 | v.latinKey = false; | - | ||||||||||||||||||
232 | v.value = QJsonPrivate::Value::valueToStore(val, valueOffset); | - | ||||||||||||||||||
233 | if (valueSize
| 2-6 | ||||||||||||||||||
234 | QJsonPrivate::Value::copyData(val, (char *)a + valueOffset, compressed); executed 2 times by 1 test: QJsonPrivate::Value::copyData(val, (char *)a + valueOffset, compressed); Executed by:
| 2 | ||||||||||||||||||
235 | } executed 8 times by 1 test: end of block Executed by:
| 8 | ||||||||||||||||||
236 | void QJsonArray::replace(int i, const QJsonValue &value) | - | ||||||||||||||||||
237 | { | - | ||||||||||||||||||
238 | ((!(a && i >= 0 && i < (int)(a->length))) ? qt_assert("a && i >= 0 && i < (int)(a->length)",__FILE__,533) : qt_noop()); | - | ||||||||||||||||||
239 | QJsonValue val = value; | - | ||||||||||||||||||
240 | - | |||||||||||||||||||
241 | bool compressed; | - | ||||||||||||||||||
242 | int valueSize = QJsonPrivate::Value::requiredStorage(val, &compressed); | - | ||||||||||||||||||
243 | - | |||||||||||||||||||
244 | if (!detach2(valueSize)
| 0 | ||||||||||||||||||
245 | return; never executed: return; | 0 | ||||||||||||||||||
246 | - | |||||||||||||||||||
247 | if (!a->length
| 0 | ||||||||||||||||||
248 | a->tableOffset = sizeof(QJsonPrivate::Array); never executed: a->tableOffset = sizeof(QJsonPrivate::Array); | 0 | ||||||||||||||||||
249 | - | |||||||||||||||||||
250 | int valueOffset = a->reserveSpace(valueSize, i, 1, true); | - | ||||||||||||||||||
251 | if (!valueOffset
| 0 | ||||||||||||||||||
252 | return; never executed: return; | 0 | ||||||||||||||||||
253 | - | |||||||||||||||||||
254 | QJsonPrivate::Value &v = (*a)[i]; | - | ||||||||||||||||||
255 | v.type = (val.t == QJsonValue::Undefined
| 0 | ||||||||||||||||||
256 | v.latinOrIntValue = compressed; | - | ||||||||||||||||||
257 | v.latinKey = false; | - | ||||||||||||||||||
258 | v.value = QJsonPrivate::Value::valueToStore(val, valueOffset); | - | ||||||||||||||||||
259 | if (valueSize
| 0 | ||||||||||||||||||
260 | QJsonPrivate::Value::copyData(val, (char *)a + valueOffset, compressed); never executed: QJsonPrivate::Value::copyData(val, (char *)a + valueOffset, compressed); | 0 | ||||||||||||||||||
261 | - | |||||||||||||||||||
262 | ++d->compactionCounter; | - | ||||||||||||||||||
263 | if (d->compactionCounter > 32u
| 0 | ||||||||||||||||||
264 | compact(); never executed: compact(); | 0 | ||||||||||||||||||
265 | } never executed: end of block | 0 | ||||||||||||||||||
266 | - | |||||||||||||||||||
267 | - | |||||||||||||||||||
268 | - | |||||||||||||||||||
269 | - | |||||||||||||||||||
270 | - | |||||||||||||||||||
271 | - | |||||||||||||||||||
272 | bool QJsonArray::contains(const QJsonValue &value) const | - | ||||||||||||||||||
273 | { | - | ||||||||||||||||||
274 | for (int i = 0; i < size()
| 0 | ||||||||||||||||||
275 | if (at(i) == value
| 0 | ||||||||||||||||||
276 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
277 | } never executed: end of block | 0 | ||||||||||||||||||
278 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
279 | } | - | ||||||||||||||||||
280 | QJsonValueRef QJsonArray::operator [](int i) | - | ||||||||||||||||||
281 | { | - | ||||||||||||||||||
282 | ((!(a && i >= 0 && i < (int)a->length)) ? qt_assert("a && i >= 0 && i < (int)a->length",__FILE__,591) : qt_noop()); | - | ||||||||||||||||||
283 | return never executed: QJsonValueRef(this, i);return QJsonValueRef(this, i); never executed: return QJsonValueRef(this, i); | 0 | ||||||||||||||||||
284 | } | - | ||||||||||||||||||
285 | - | |||||||||||||||||||
286 | - | |||||||||||||||||||
287 | - | |||||||||||||||||||
288 | - | |||||||||||||||||||
289 | - | |||||||||||||||||||
290 | - | |||||||||||||||||||
291 | QJsonValue QJsonArray::operator[](int i) const | - | ||||||||||||||||||
292 | { | - | ||||||||||||||||||
293 | return never executed: at(i);return at(i); never executed: return at(i); | 0 | ||||||||||||||||||
294 | } | - | ||||||||||||||||||
295 | - | |||||||||||||||||||
296 | - | |||||||||||||||||||
297 | - | |||||||||||||||||||
298 | - | |||||||||||||||||||
299 | bool QJsonArray::operator==(const QJsonArray &other) const | - | ||||||||||||||||||
300 | { | - | ||||||||||||||||||
301 | if (a == other.a
| 0-8 | ||||||||||||||||||
302 | return executed 8 times by 1 test: true;return true; Executed by:
executed 8 times by 1 test: return true; Executed by:
| 8 | ||||||||||||||||||
303 | - | |||||||||||||||||||
304 | if (!a
| 0 | ||||||||||||||||||
305 | return never executed: !other.a->length;return !other.a->length; never executed: return !other.a->length; | 0 | ||||||||||||||||||
306 | if (!other.a
| 0 | ||||||||||||||||||
307 | return never executed: !a->length;return !a->length; never executed: return !a->length; | 0 | ||||||||||||||||||
308 | if (a->length != other.a->length
| 0 | ||||||||||||||||||
309 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
310 | - | |||||||||||||||||||
311 | for (int i = 0; i < (int)a->length
| 0 | ||||||||||||||||||
312 | if (QJsonValue(d, a, a->at(i)) != QJsonValue(other.d, other.a, other.a->at(i))
| 0 | ||||||||||||||||||
313 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
314 | } never executed: end of block | 0 | ||||||||||||||||||
315 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
316 | } | - | ||||||||||||||||||
317 | - | |||||||||||||||||||
318 | - | |||||||||||||||||||
319 | - | |||||||||||||||||||
320 | - | |||||||||||||||||||
321 | bool QJsonArray::operator!=(const QJsonArray &other) const | - | ||||||||||||||||||
322 | { | - | ||||||||||||||||||
323 | return never executed: !(*this == other);return !(*this == other); never executed: return !(*this == other); | 0 | ||||||||||||||||||
324 | } | - | ||||||||||||||||||
325 | void QJsonArray::detach(uint reserve) | - | ||||||||||||||||||
326 | { | - | ||||||||||||||||||
327 | (void)reserve; | - | ||||||||||||||||||
328 | ((!(!reserve)) ? qt_assert("!reserve",__FILE__,1172) : qt_noop()); | - | ||||||||||||||||||
329 | detach2(0); | - | ||||||||||||||||||
330 | } never executed: end of block | 0 | ||||||||||||||||||
331 | - | |||||||||||||||||||
332 | - | |||||||||||||||||||
333 | - | |||||||||||||||||||
334 | - | |||||||||||||||||||
335 | bool QJsonArray::detach2(uint reserve) | - | ||||||||||||||||||
336 | { | - | ||||||||||||||||||
337 | if (!d
| 2-6 | ||||||||||||||||||
338 | if (reserve >= QJsonPrivate::Value::MaxSize
| 0-2 | ||||||||||||||||||
339 | QMessageLogger(__FILE__, 1183, __PRETTY_FUNCTION__).warning("QJson: Document too large to store in data structure"); | - | ||||||||||||||||||
340 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
341 | } | - | ||||||||||||||||||
342 | d = new QJsonPrivate::Data(reserve, QJsonValue::Array); | - | ||||||||||||||||||
343 | a = static_cast<QJsonPrivate::Array *>(d->header->root()); | - | ||||||||||||||||||
344 | d->ref.ref(); | - | ||||||||||||||||||
345 | return executed 2 times by 1 test: true;return true; Executed by:
executed 2 times by 1 test: return true; Executed by:
| 2 | ||||||||||||||||||
346 | } | - | ||||||||||||||||||
347 | if (reserve == 0
| 0-6 | ||||||||||||||||||
348 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
349 | - | |||||||||||||||||||
350 | QJsonPrivate::Data *x = d->clone(a, reserve); | - | ||||||||||||||||||
351 | if (!x
| 0-6 | ||||||||||||||||||
352 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
353 | x->ref.ref(); | - | ||||||||||||||||||
354 | if (!d->ref.deref()
| 2-4 | ||||||||||||||||||
355 | delete d; executed 2 times by 1 test: delete d; Executed by:
| 2 | ||||||||||||||||||
356 | d = x; | - | ||||||||||||||||||
357 | a = static_cast<QJsonPrivate::Array *>(d->header->root()); | - | ||||||||||||||||||
358 | return executed 6 times by 1 test: true;return true; Executed by:
executed 6 times by 1 test: return true; Executed by:
| 6 | ||||||||||||||||||
359 | } | - | ||||||||||||||||||
360 | - | |||||||||||||||||||
361 | - | |||||||||||||||||||
362 | - | |||||||||||||||||||
363 | - | |||||||||||||||||||
364 | void QJsonArray::compact() | - | ||||||||||||||||||
365 | { | - | ||||||||||||||||||
366 | if (!d
| 0 | ||||||||||||||||||
367 | return; never executed: return; | 0 | ||||||||||||||||||
368 | - | |||||||||||||||||||
369 | detach2(); | - | ||||||||||||||||||
370 | d->compact(); | - | ||||||||||||||||||
371 | a = static_cast<QJsonPrivate::Array *>(d->header->root()); | - | ||||||||||||||||||
372 | } never executed: end of block | 0 | ||||||||||||||||||
373 | - | |||||||||||||||||||
374 | - | |||||||||||||||||||
375 | - | |||||||||||||||||||
376 | QDebug operator<<(QDebug dbg, const QJsonArray &a) | - | ||||||||||||||||||
377 | { | - | ||||||||||||||||||
378 | QDebugStateSaver saver(dbg); | - | ||||||||||||||||||
379 | if (!a.a
| 0-1 | ||||||||||||||||||
380 | dbg << "QJsonArray()"; | - | ||||||||||||||||||
381 | return executed 1 time by 1 test: dbg;return dbg; Executed by:
executed 1 time by 1 test: return dbg; Executed by:
| 1 | ||||||||||||||||||
382 | } | - | ||||||||||||||||||
383 | QByteArray json; | - | ||||||||||||||||||
384 | QJsonPrivate::Writer::arrayToJson(a.a, json, 0, true); | - | ||||||||||||||||||
385 | dbg.nospace() << "QJsonArray(" | - | ||||||||||||||||||
386 | << json.constData() | - | ||||||||||||||||||
387 | << ")"; | - | ||||||||||||||||||
388 | return never executed: dbg;return dbg; never executed: return dbg; | 0 | ||||||||||||||||||
389 | } | - | ||||||||||||||||||
390 | - | |||||||||||||||||||
391 | - | |||||||||||||||||||
392 | - | |||||||||||||||||||
Switch to Source code | Preprocessed file |