54 #ifndef QXMLSTREAM_P_H 55 #define QXMLSTREAM_P_H 135 static const short lhs [];
136 static const short rhs [];
147 return goto_default [
nt];
154 const int yyn = action_index [state] + token;
156 if (yyn < 0 || action_check [yyn] != token)
157 return - action_default [state];
159 return action_info [yyn];
165 "end of file", 0,
" ",
"<",
">",
"&",
"#",
"\'",
"\"",
"[",
166 "]",
"(",
")",
"|",
"=",
"%",
"/",
":",
";",
",",
167 "-",
"+",
"*",
".",
"?",
"!",
"[a-zA-Z]",
"[0-9]",
"[CDATA[",
"DOCTYPE",
168 "ELEMENT",
"ATTLIST",
"ENTITY",
"NOTATION",
"SYSTEM",
"PUBLIC",
"NDATA",
"REQUIRED",
"IMPLIED",
"FIXED",
169 "EMPTY",
"ANY",
"PCDATA", 0, 0, 0, 0,
"CDATA",
"ID",
"IDREF",
170 "IDREFS",
"ENTITIES",
"NMTOKEN",
"NMTOKENS",
"<?xml",
"version", 0};
173 57, 57, 59, 59, 59, 59, 59, 59, 59, 59,
174 67, 68, 64, 72, 72, 72, 75, 66, 66, 66,
175 66, 79, 78, 80, 80, 80, 80, 80, 80, 80,
176 81, 81, 81, 81, 81, 81, 81, 87, 83, 88,
177 88, 88, 88, 91, 92, 93, 93, 93, 93, 94,
178 94, 96, 96, 96, 97, 97, 98, 98, 99, 99,
179 100, 100, 89, 89, 95, 90, 101, 101, 103, 103,
180 103, 103, 103, 103, 103, 103, 103, 103, 104, 105,
181 105, 105, 105, 107, 108, 109, 109, 84, 84, 110,
182 110, 112, 112, 85, 85, 85, 65, 65, 76, 114,
183 63, 115, 116, 86, 86, 86, 117, 117, 117, 117,
184 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
185 117, 117, 117, 117, 117, 117, 117, 117, 117, 118,
186 118, 119, 119, 119, 119, 119, 119, 119, 119, 122,
187 70, 70, 70, 70, 123, 124, 123, 124, 123, 124,
188 123, 124, 126, 126, 126, 126, 126, 126, 126, 126,
189 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
190 126, 126, 126, 126, 125, 73, 113, 113, 113, 113,
191 127, 128, 127, 128, 127, 128, 127, 128, 129, 129,
192 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
193 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
194 129, 129, 129, 106, 106, 106, 106, 131, 132, 131,
195 132, 131, 131, 132, 132, 133, 133, 133, 133, 135,
196 71, 71, 71, 136, 136, 137, 62, 60, 61, 138,
197 121, 82, 130, 134, 120, 139, 139, 139, 139, 58,
198 58, 58, 58, 58, 58, 58, 58, 58, 58, 74,
199 69, 69, 77, 111, 102, 102, 102, 102, 102, 140};
202 2, 1, 4, 2, 2, 2, 2, 2, 2, 0,
203 1, 1, 9, 2, 4, 0, 4, 4, 6, 6,
204 4, 1, 3, 1, 1, 1, 2, 2, 2, 0,
205 1, 1, 1, 1, 1, 1, 1, 4, 4, 1,
206 1, 1, 1, 1, 2, 1, 1, 1, 0, 2,
207 2, 2, 6, 6, 1, 5, 1, 5, 3, 5,
208 0, 1, 6, 8, 4, 2, 1, 5, 1, 1,
209 1, 1, 1, 1, 1, 1, 6, 7, 1, 2,
210 2, 1, 4, 3, 3, 1, 2, 5, 6, 4,
211 6, 3, 5, 5, 3, 4, 4, 5, 2, 3,
212 2, 2, 4, 5, 5, 7, 1, 1, 1, 1,
213 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
214 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
215 1, 2, 2, 2, 2, 1, 1, 1, 1, 1,
216 2, 2, 3, 3, 2, 2, 2, 2, 1, 1,
217 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
218 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
219 1, 1, 1, 1, 1, 1, 2, 2, 3, 3,
220 2, 2, 2, 2, 1, 1, 1, 1, 1, 1,
221 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
222 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
223 1, 1, 1, 2, 2, 3, 3, 2, 2, 2,
224 2, 1, 1, 1, 1, 1, 1, 1, 1, 5,
225 0, 1, 3, 1, 3, 2, 4, 3, 5, 1,
226 3, 3, 3, 3, 4, 1, 1, 2, 2, 2,
227 4, 2, 2, 2, 2, 2, 2, 2, 0, 1,
228 0, 1, 1, 1, 1, 1, 1, 1, 1, 2};
231 10, 259, 0, 2, 1, 0, 125, 117, 119, 120,
232 127, 129, 123, 11, 114, 108, 0, 109, 128, 111,
233 115, 113, 121, 124, 126, 107, 110, 112, 118, 116,
234 131, 122, 240, 12, 254, 136, 250, 253, 0, 130,
235 140, 257, 16, 252, 138, 137, 0, 256, 139, 259,
236 231, 258, 255, 0, 0, 264, 0, 247, 246, 0,
237 249, 248, 245, 241, 99, 263, 0, 236, 0, 0,
238 260, 97, 98, 101, 0, 132, 134, 133, 135, 0,
239 0, 261, 0, 0, 176, 0, 173, 165, 167, 168,
240 142, 154, 171, 162, 156, 157, 153, 159, 163, 161,
241 169, 172, 152, 155, 158, 160, 166, 164, 174, 170,
242 150, 175, 0, 144, 148, 146, 151, 141, 149, 0,
243 147, 143, 145, 0, 15, 14, 262, 0, 22, 21,
244 261, 30, 0, 20, 0, 0, 32, 37, 31, 0,
245 33, 261, 0, 34, 0, 24, 0, 35, 0, 26,
246 36, 25, 0, 242, 41, 40, 261, 43, 49, 261,
247 42, 0, 44, 261, 49, 261, 0, 261, 0, 49,
248 0, 48, 46, 47, 51, 52, 261, 261, 0, 57,
249 261, 54, 261, 0, 58, 0, 55, 261, 53, 261,
250 0, 56, 65, 0, 261, 61, 261, 0, 59, 62,
251 63, 0, 261, 0, 0, 60, 64, 45, 50, 66,
252 0, 39, 0, 0, 261, 0, 94, 95, 0, 0,
253 0, 0, 261, 0, 210, 201, 203, 205, 178, 190,
254 208, 199, 193, 191, 194, 189, 196, 198, 206, 209,
255 188, 192, 195, 197, 202, 200, 204, 207, 211, 213,
256 212, 186, 0, 0, 243, 180, 184, 182, 0, 0,
257 93, 187, 177, 185, 0, 183, 179, 181, 92, 0,
258 96, 0, 0, 0, 0, 0, 261, 86, 261, 0,
259 262, 0, 87, 0, 89, 69, 74, 73, 70, 71,
260 72, 261, 75, 76, 0, 0, 0, 269, 268, 266,
261 267, 265, 67, 261, 0, 261, 0, 0, 68, 77,
262 261, 0, 261, 0, 0, 78, 0, 79, 0, 82,
263 85, 0, 0, 215, 225, 224, 0, 227, 229, 228,
264 226, 0, 244, 217, 221, 219, 223, 214, 222, 0,
265 220, 216, 218, 0, 81, 80, 0, 83, 0, 84,
266 88, 100, 0, 38, 0, 0, 0, 0, 91, 90,
267 0, 103, 23, 27, 29, 28, 0, 0, 261, 262,
268 0, 261, 0, 106, 105, 261, 0, 104, 102, 0,
269 0, 18, 261, 17, 0, 19, 0, 0, 251, 0,
270 261, 0, 239, 0, 232, 238, 0, 237, 234, 261,
271 261, 262, 233, 235, 0, 261, 0, 230, 261, 0,
272 261, 0, 231, 0, 0, 13, 270, 9, 5, 8,
273 4, 0, 7, 259, 6, 0, 3};
276 2, 4, 3, 49, 388, 43, 37, 52, 47, 41,
277 249, 53, 127, 84, 393, 81, 85, 126, 42, 46,
278 169, 130, 131, 146, 145, 149, 138, 136, 140, 147,
279 139, 159, 160, 157, 168, 167, 209, 165, 164, 166,
280 187, 180, 196, 200, 303, 302, 295, 321, 320, 319,
281 279, 277, 278, 142, 56, 141, 222, 38, 34, 148,
282 39, 48, 40, 248, 45, 36, 119, 112, 330, 111,
283 264, 252, 251, 250, 339, 326, 325, 329, 398, 399,
287 -21, -57, 33, 119, 960, 70, -57, -57, -57, -57,
288 -57, -57, -57, -57, -57, -57, 105, -57, -57, -57,
289 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
290 -57, -57, -57, -57, -57, -57, -57, -57, 40, -57,
291 795, -57, 47, -57, -57, -57, 107, -57, -57, -57,
292 84, -57, -57, -38, 80, -57, 12, -57, -57, 97,
293 -57, -57, -57, -57, -57, -57, 13, -57, 56, 34,
294 -57, -57, -57, -57, 51, -57, -57, -57, -57, 53,
295 57, 84, 300, 255, -57, 84, -57, -57, -57, -57,
296 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
297 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
298 -57, -57, 355, -57, -57, -57, -57, -57, -57, 326,
299 -57, -57, -57, 48, -57, -57, -57, 50, -57, -57,
300 84, 155, 32, -57, 38, 22, -57, -57, -57, 115,
301 -57, 35, 156, -57, 173, -57, 245, -57, 44, -57,
302 -57, -57, 16, -57, -57, -57, 29, -57, 116, 29,
303 -57, 133, -57, 29, 129, 84, 15, 29, -22, 121,
304 74, -57, -57, -57, -57, 82, 29, 29, 88, -57,
305 29, 7, 29, 86, -57, 83, -57, 27, 19, 26,
306 94, -57, -57, 106, 29, 3, 29, -8, -57, -57,
307 -57, 104, 29, -6, -7, -57, -57, -57, -57, -57,
308 17, -57, -2, 11, 29, 18, -57, -57, 850, 65,
309 465, 67, 84, 135, -57, -57, -57, -57, -57, -57,
310 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
311 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
312 -57, -57, 630, 24, -57, -57, -57, -57, 84, 76,
313 -57, -57, -57, -57, 740, -57, -57, -57, -57, 39,
314 -57, 23, 21, 14, 78, 22, 84, -57, 84, 184,
315 20, 31, -57, 41, -57, -57, -57, -57, -57, -57,
316 -57, 84, -57, -57, 36, 126, 162, -57, -57, -57,
317 -57, -57, -57, 29, 79, 29, 29, 160, -57, -57,
318 29, 145, 29, 75, 29, -57, 575, -57, 410, -57,
319 -57, 110, 64, -57, -57, -57, 685, -57, -57, -57,
320 -57, -17, -57, -57, -57, -57, -57, -57, -57, 520,
321 -57, -57, -57, 29, -57, -57, 61, -57, 29, -57,
322 -57, -57, 29, -57, 29, 29, -15, 29, -57, -57,
323 29, -57, -57, -57, -57, -57, 95, 43, 29, 45,
324 9, 29, 10, -57, -57, 29, 2, -57, -57, -24,
325 190, -57, 29, -57, 1, -57, 905, 150, -57, -26,
326 29, 0, -57, 109, -26, -57, 8, -57, -57, 29,
327 29, -19, -57, -57, -11, 29, 59, -57, 29, -5,
328 29, 103, 29, -16, 6, -57, -57, -57, -57, -57,
329 -57, 69, -57, -57, -57, 905, -57,
331 -84, -84, -84, 204, 75, -84, -84, -84, -84, -84,
332 -84, -84, -84, -84, -84, -84, 7, -84, -84, -84,
333 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84,
334 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84,
335 101, -84, -84, -84, -84, -84, -84, -84, -84, 64,
336 54, -84, -84, -84, -84, -84, -84, -84, -84, -84,
337 -84, -84, -84, -84, -84, -84, 68, -84, 30, -84,
338 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84,
339 32, -84, -16, -7, -84, 42, -84, -84, -84, -84,
340 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84,
341 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84,
342 -84, -84, 45, -84, -84, -84, -84, -84, -84, 44,
343 -84, -84, -84, 33, -84, -84, -84, -84, -84, -84,
344 36, 108, -84, -84, -84, 69, -84, -84, -84, 62,
345 -84, 63, -84, -84, -84, -84, 118, -84, -84, -84,
346 -84, -84, -84, -84, -84, -84, -2, -84, -84, -10,
347 -84, -84, -84, 25, -21, 11, -84, 20, -84, -25,
348 -84, -84, -84, -84, -84, -84, 1, 2, -36, -84,
349 -9, -84, 5, -13, -84, -8, -84, 6, -84, 8,
350 12, -84, -84, -84, 23, -84, 4, -1, -84, -84,
351 -84, -84, 0, -84, -14, -84, -84, -84, -84, -84,
352 -84, -84, 55, -84, 58, -84, -84, -84, -84, 53,
353 47, 123, 67, 66, -84, -84, -84, -84, -84, -84,
354 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84,
355 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84,
356 -84, -84, -15, -84, -84, -84, -84, -84, 41, 40,
357 -84, -84, -84, -84, -46, -84, -84, -84, -84, -84,
358 -84, 35, -84, 34, 37, 18, 70, -84, 89, -84,
359 43, -84, -84, -84, -84, -84, -84, -84, -84, -84,
360 -84, 48, -84, -84, -84, -84, -84, -84, -84, -84,
361 -84, -84, -84, 31, -84, 29, 27, 17, -84, -84,
362 38, 24, 39, -84, 49, -84, 71, -84, 93, -84,
363 -84, -84, -12, -84, -84, -84, 94, -84, -84, -84,
364 -84, -84, -84, -84, -84, -84, -84, -84, -84, 78,
365 -84, -84, -84, 50, -84, -84, 46, -84, 56, -84,
366 -84, -84, 60, -84, 61, 59, 51, 57, -84, -84,
367 14, -84, -84, -84, -84, -84, -11, -6, 72, -5,
368 -84, -3, -84, -84, -84, 52, -84, -84, -84, -20,
369 77, -84, 21, -84, -84, -84, 76, 16, -84, 19,
370 26, -84, -84, -84, 10, -84, -84, -84, -84, 80,
371 13, 73, -84, -84, -84, 22, -27, -84, 9, -84,
372 28, 15, 82, -84, -84, -84, -84, -84, -84, -84,
373 -84, -84, -84, 3, -84, 98, -84};
376 65, 332, 65, 405, 392, 385, 377, 65, 414, 410,
377 415, 55, 397, 374, 373, 217, 206, 408, 65, 65,
378 207, 211, 216, 1, 55, 199, 182, 192, 70, 70,
379 63, 70, 189, 416, 153, 350, 133, 70, 72, 55,
380 65, 351, 254, 270, 73, 284, 65, 310, 55, 65,
381 83, 82, 83, 82, 129, 83, 82, 54, 70, 128,
382 83, 82, 66, 64, 83, 82, 318, 316, 318, 316,
383 54, 212, 83, 82, 83, 82, 54, 55, 367, 366,
384 69, 80, 79, 83, 82, 163, 70, 314, 305, 272,
385 55, 306, 305, 354, 163, 177, 55, 163, 379, 163,
386 65, 176, 83, 82, 55, 163, 58, 57, 0, 65,
387 83, 82, 65, 395, 65, 62, 203, 202, 195, 194,
388 65, 417, 16, 61, 60, 396, 156, 272, 0, 66,
389 64, 65, 317, 318, 316, 378, 379, 171, 173, 162,
390 172, 54, 171, 173, 163, 172, 0, 345, 344, 343,
391 171, 173, 0, 172, 0, 155, 154, 70, 134, 65,
392 0, 55, 297, 220, 218, 298, 389, 0, 300, 0,
393 135, 301, 299, 33, 66, 64, 65, 297, 0, 297,
394 298, 0, 298, 300, 0, 300, 301, 299, 301, 299,
395 221, 219, 70, 272, 381, 291, 0, 0, 0, 128,
396 13, 0, 0, 273, 271, 274, 275, 0, 0, 0,
397 0, 0, 0, 0, 0, 0, 287, 294, 0, 0,
398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
399 0, 285, 288, 289, 290, 286, 292, 293, 0, 0,
400 0, 0, 0, 0, 0, 0, 0, 70, 134, 0,
401 0, 0, 0, 0, 0, 362, 0, 108, 0, 103,
402 135, 94, 117, 116, 95, 104, 97, 105, 99, 93,
403 98, 107, 87, 106, 88, 89, 100, 109, 92, 101,
404 86, 96, 91, 0, 0, 0, 0, 0, 0, 0,
405 13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
406 0, 0, 108, 0, 103, 0, 94, 102, 90, 95,
407 104, 97, 105, 99, 93, 98, 107, 87, 106, 88,
408 89, 100, 109, 92, 101, 86, 96, 91, 108, 0,
409 103, 0, 94, 121, 120, 95, 104, 97, 105, 99,
410 93, 98, 107, 87, 106, 88, 89, 100, 109, 92,
411 101, 86, 96, 91, 0, 0, 0, 108, 0, 103,
412 0, 94, 114, 113, 95, 104, 97, 105, 99, 93,
413 98, 107, 87, 106, 88, 89, 100, 109, 92, 101,
414 86, 96, 91, 0, 0, 0, 0, 0, 0, 0,
415 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
416 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
417 0, 0, 108, 0, 103, 322, 94, 337, 336, 95,
418 104, 97, 105, 99, 93, 98, 107, 87, 106, 88,
419 89, 100, 109, 92, 101, 86, 96, 91, 0, 0,
420 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
421 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
422 0, 0, 0, 0, 0, 0, 0, 246, 233, 241,
423 223, 232, 262, 261, 234, 242, 236, 243, 237, 231,
424 0, 245, 225, 244, 226, 227, 238, 247, 230, 239,
425 224, 235, 229, 0, 0, 0, 0, 0, 0, 0,
426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
427 13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
428 0, 0, 108, 0, 103, 322, 94, 341, 340, 95,
429 104, 97, 105, 99, 93, 98, 107, 87, 106, 88,
430 89, 100, 109, 92, 101, 86, 96, 91, 0, 0,
431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
432 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
433 0, 0, 0, 0, 0, 0, 0, 108, 0, 103,
434 322, 94, 324, 323, 95, 104, 97, 105, 99, 93,
435 98, 107, 87, 106, 88, 89, 100, 109, 92, 101,
436 86, 96, 91, 0, 0, 0, 0, 0, 0, 0,
437 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
438 13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
439 0, 0, 246, 233, 241, 223, 232, 256, 255, 234,
440 242, 236, 243, 237, 231, 0, 245, 225, 244, 226,
441 227, 238, 247, 230, 239, 224, 235, 229, 0, 0,
442 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
443 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
444 0, 0, 0, 0, 0, 0, 0, 108, 0, 103,
445 322, 94, 334, 333, 95, 104, 97, 105, 99, 93,
446 98, 107, 87, 106, 88, 89, 100, 109, 92, 101,
447 86, 96, 91, 0, 0, 0, 0, 0, 0, 0,
448 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
449 13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
450 0, 0, 246, 233, 241, 223, 232, 266, 265, 234,
451 242, 236, 243, 237, 231, 0, 245, 225, 244, 226,
452 227, 238, 247, 230, 239, 224, 235, 229, 0, 0,
453 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
454 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
455 0, 0, 0, 0, 0, 0, 0, 30, 0, 25,
456 74, 15, 24, 10, 17, 26, 19, 27, 21, 14,
457 20, 29, 7, 28, 8, 9, 22, 31, 12, 23,
458 6, 18, 11, 0, 0, 0, 0, 0, 0, 0,
459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
460 13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
461 0, 0, 246, 233, 241, 223, 232, 240, 228, 234,
462 242, 236, 243, 237, 231, 0, 245, 225, 244, 226,
463 227, 238, 247, 230, 239, 224, 235, 229, 0, 0,
464 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
465 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
466 0, 0, 0, 0, 0, 0, 0, 30, 387, 25,
467 5, 15, 24, 10, 17, 26, 19, 27, 21, 14,
468 20, 29, 7, 28, 8, 9, 22, 31, 12, 23,
469 6, 18, 11, 0, 0, 0, 0, 0, 0, 0,
470 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
471 13, 32, 0, 0, 0, 0, 0, 0, 0, 33,
472 0, 0, 30, 16, 25, 5, 15, 24, 10, 17,
473 26, 19, 27, 21, 14, 20, 29, 7, 28, 8,
474 9, 22, 31, 12, 23, 6, 18, 11, 0, 0,
475 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
476 0, 0, 0, 0, 0, 13, 32, 0, 0, 0,
477 0, 0, 0, 0, 33, 0, 0,
479 380, 179, 210, 181, 425, 368, 205, 375, 371, 372,
480 161, 208, 204, 178, 185, 174, 201, 183, 188, 198,
481 190, 409, 407, 175, 184, 404, 267, 67, 412, 186,
482 400, 361, 193, 384, 406, 197, 67, 170, 391, 390,
483 411, 307, 331, 304, 309, 125, 124, 71, 132, 191,
484 311, 313, 110, 260, 352, 276, 0, 257, 259, 123,
485 296, 118, 308, 348, 376, 386, 315, 346, 312, 258,
486 215, 394, 360, 349, 358, 213, 359, 353, 356, 269,
487 0, 328, 281, 0, 370, 44, 44, 280, 328, 369,
488 0, 355, 402, 400, 383, 347, 413, 401, 382, 394,
489 158, 283, 426, 328, 328, 357, 280, 0, 44, 214,
490 0, 76, 122, 115, 137, 0, 150, 0, 143, 263,
491 253, 0, 68, 152, 137, 151, 150, 144, 143, 0,
492 0, 0, 0, 0, 327, 365, 268, 144, 35, 35,
493 282, 327, 363, 364, 0, 0, 0, 0, 0, 0,
494 0, 403, 0, 0, 342, 0, 327, 327, 0, 0,
495 0, 35, 78, 0, 75, 77, 0, 0, 0, 338,
496 335, 0, 0, 0, 0, 0, 0, 0, 0, 0,
497 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
498 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
499 0, 0, 0, 0, 0, 0, 0, 423, 0, 420,
500 418, 424, 422, 419, 0, 0, 0, 0, 0, 0,
501 0, 0, 0, 421, 0, 0, 0, 0, 0, 0,
502 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
503 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
504 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
505 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
506 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
507 0, 0, 0, 0, 0, 0, 0, 0};
510 26, 18, 26, 14, 4, 4, 4, 26, 24, 14,
511 4, 26, 4, 4, 4, 4, 22, 55, 26, 26,
512 42, 4, 4, 44, 26, 22, 19, 12, 2, 2,
513 18, 2, 13, 0, 18, 4, 4, 2, 4, 26,
514 26, 20, 18, 4, 4, 4, 26, 11, 26, 26,
515 7, 8, 7, 8, 4, 7, 8, 6, 2, 9,
516 7, 8, 24, 25, 7, 8, 7, 8, 7, 8,
517 6, 36, 7, 8, 7, 8, 6, 26, 34, 35,
518 24, 34, 35, 7, 8, 11, 2, 12, 13, 20,
519 26, 12, 13, 15, 11, 13, 26, 11, 29, 11,
520 26, 19, 7, 8, 26, 11, 26, 27, -1, 26,
521 7, 8, 26, 4, 26, 18, 12, 13, 12, 13,
522 26, 2, 3, 26, 27, 16, 11, 20, -1, 24,
523 25, 26, 6, 7, 8, 28, 29, 21, 22, 6,
524 24, 6, 21, 22, 11, 24, -1, 37, 38, 39,
525 21, 22, -1, 24, -1, 40, 41, 2, 3, 26,
526 -1, 26, 17, 7, 8, 20, 16, -1, 23, -1,
527 15, 26, 27, 54, 24, 25, 26, 17, -1, 17,
528 20, -1, 20, 23, -1, 23, 26, 27, 26, 27,
529 34, 35, 2, 20, 4, 11, -1, -1, -1, 9,
530 45, -1, -1, 30, 31, 32, 33, -1, -1, -1,
531 -1, -1, -1, -1, -1, -1, 32, 33, -1, -1,
532 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
533 -1, 47, 48, 49, 50, 51, 52, 53, -1, -1,
534 -1, -1, -1, -1, -1, -1, -1, 2, 3, -1,
535 -1, -1, -1, -1, -1, 10, -1, 2, -1, 4,
536 15, 6, 7, 8, 9, 10, 11, 12, 13, 14,
537 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
538 25, 26, 27, -1, -1, -1, -1, -1, -1, -1,
539 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
540 -1, -1, 2, -1, 4, -1, 6, 7, 8, 9,
541 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
542 20, 21, 22, 23, 24, 25, 26, 27, 2, -1,
543 4, -1, 6, 7, 8, 9, 10, 11, 12, 13,
544 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
545 24, 25, 26, 27, -1, -1, -1, 2, -1, 4,
546 -1, 6, 7, 8, 9, 10, 11, 12, 13, 14,
547 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
548 25, 26, 27, -1, -1, -1, -1, -1, -1, -1,
549 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
550 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
551 -1, -1, 2, -1, 4, 5, 6, 7, 8, 9,
552 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
553 20, 21, 22, 23, 24, 25, 26, 27, -1, -1,
554 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
555 -1, -1, -1, -1, -1, 45, -1, -1, -1, -1,
556 -1, -1, -1, -1, -1, -1, -1, 2, 3, 4,
557 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
558 -1, 16, 17, 18, 19, 20, 21, 22, 23, 24,
559 25, 26, 27, -1, -1, -1, -1, -1, -1, -1,
560 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
561 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
562 -1, -1, 2, -1, 4, 5, 6, 7, 8, 9,
563 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
564 20, 21, 22, 23, 24, 25, 26, 27, -1, -1,
565 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
566 -1, -1, -1, -1, -1, 45, -1, -1, -1, -1,
567 -1, -1, -1, -1, -1, -1, -1, 2, -1, 4,
568 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
569 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
570 25, 26, 27, -1, -1, -1, -1, -1, -1, -1,
571 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
572 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
573 -1, -1, 2, 3, 4, 5, 6, 7, 8, 9,
574 10, 11, 12, 13, 14, -1, 16, 17, 18, 19,
575 20, 21, 22, 23, 24, 25, 26, 27, -1, -1,
576 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
577 -1, -1, -1, -1, -1, 45, -1, -1, -1, -1,
578 -1, -1, -1, -1, -1, -1, -1, 2, -1, 4,
579 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
580 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
581 25, 26, 27, -1, -1, -1, -1, -1, -1, -1,
582 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
583 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
584 -1, -1, 2, 3, 4, 5, 6, 7, 8, 9,
585 10, 11, 12, 13, 14, -1, 16, 17, 18, 19,
586 20, 21, 22, 23, 24, 25, 26, 27, -1, -1,
587 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
588 -1, -1, -1, -1, -1, 45, -1, -1, -1, -1,
589 -1, -1, -1, -1, -1, -1, -1, 2, -1, 4,
590 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
591 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
592 25, 26, 27, -1, -1, -1, -1, -1, -1, -1,
593 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
594 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
595 -1, -1, 2, 3, 4, 5, 6, 7, 8, 9,
596 10, 11, 12, 13, 14, -1, 16, 17, 18, 19,
597 20, 21, 22, 23, 24, 25, 26, 27, -1, -1,
598 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
599 -1, -1, -1, -1, -1, 45, -1, -1, -1, -1,
600 -1, -1, -1, -1, -1, -1, -1, 2, 3, 4,
601 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
602 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
603 25, 26, 27, -1, -1, -1, -1, -1, -1, -1,
604 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
605 45, 46, -1, -1, -1, -1, -1, -1, -1, 54,
606 -1, -1, 2, 3, 4, 5, 6, 7, 8, 9,
607 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
608 20, 21, 22, 23, 24, 25, 26, 27, -1, -1,
609 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
610 -1, -1, -1, -1, -1, 45, 46, -1, -1, -1,
611 -1, -1, -1, -1, 54, -1, -1,
613 20, 37, 12, 12, 1, 16, 20, 13, 13, 12,
614 12, 36, 12, 12, 12, 36, 12, 12, 12, 20,
615 12, 12, 49, 12, 37, 12, 72, 20, 13, 37,
616 20, 17, 12, 12, 12, 12, 20, 12, 12, 20,
617 12, 12, 54, 12, 17, 13, 13, 17, 12, 37,
618 12, 12, 68, 13, 20, 20, -1, 72, 17, 17,
619 12, 68, 45, 20, 12, 1, 17, 17, 44, 16,
620 12, 17, 54, 17, 17, 12, 17, 17, 17, 12,
621 -1, 10, 12, -1, 12, 10, 10, 17, 10, 17,
622 -1, 54, 12, 20, 17, 49, 14, 17, 21, 17,
623 38, 12, 4, 10, 10, 54, 17, -1, 10, 54,
624 -1, 10, 68, 68, 6, -1, 8, -1, 10, 72,
625 54, -1, 54, 54, 6, 17, 8, 19, 10, -1,
626 -1, -1, -1, -1, 63, 17, 13, 19, 63, 63,
627 51, 63, 24, 25, -1, -1, -1, -1, -1, -1,
628 -1, 78, -1, -1, 76, -1, 63, 63, -1, -1,
629 -1, 63, 61, -1, 63, 64, -1, -1, -1, 76,
630 76, -1, -1, -1, -1, -1, -1, -1, -1, -1,
631 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
632 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
633 -1, -1, -1, -1, -1, -1, -1, 3, -1, 5,
634 6, 7, 8, 9, -1, -1, -1, -1, -1, -1,
635 -1, -1, -1, 19, -1, -1, -1, -1, -1, -1,
636 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
637 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
638 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
639 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
640 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
641 -1, -1, -1, -1, -1, -1, -1, -1};
652 if (tos + extraCapacity + 1 > cap) {
653 cap =
qMax(tos + extraCapacity + 1, cap << 1 );
654 data =
reinterpret_cast<T *
>(
qRealloc(data, cap *
sizeof(T)));
659 inline T &
push() { reserve(1);
return data[++tos]; }
661 inline const T &
top()
const {
return data[tos]; }
662 inline T &
top() {
return data[tos]; }
663 inline T &
pop() {
return data[tos--]; }
666 inline int size()
const {
return tos + 1; }
667 inline void resize(
int s) { tos = s - 1; }
668 inline bool isEmpty()
const {
return tos < 0; }
703 int pos = tagStackStringStorageSize;
705 if (pos != tagStackStringStorage.
size())
706 tagStackStringStorage.
resize(pos);
708 tagStackStringStorageSize += sz;
709 return QStringRef(&tagStackStringStorage, pos, sz);
712 int pos = tagStackStringStorageSize;
714 if (pos != tagStackStringStorage.
size())
715 tagStackStringStorage.
resize(pos);
717 tagStackStringStorageSize += sz;
718 return QStringRef(&tagStackStringStorage, pos, sz);
725 Tag& tag = tagStack.
pop();
741 #ifndef QT_NO_XMLSTREAMREADER 759 :value(str), external(false), unparsed(false), literal(false),
760 hasBeenParsed(false), isCurrentlyReferenced(false){}
775 raiseWellFormedError(QXmlStream::tr(
"Recursive entity detected."));
779 entityReferenceStack.
push() = &entity;
787 #ifndef QT_NO_TEXTCODEC 805 void write(
const char *);
811 void resolvePublicNamespaces();
813 uint resolveCharRef(
int symbolIndex);
814 bool checkStartDocument();
815 void startDocument();
817 void checkPublicLiteral(
const QStringRef &publicId);
851 notationName.
clear();
855 parameter = external =
false;
882 void resume(
int rule);
885 return (!inParseEntity
887 || (!referenceToUnparsedEntityDetected
888 && !referenceToParameterEntityDetected
889 && !hasExternalDtdSubset)));
904 inline void reallocateStack();
906 {
return sym_stack[tos + index - 1]; }
921 const Value &symbol = sym(index);
925 const Value &symbol = sym(index);
929 const Value &symbol = sym(index);
933 const Value &symbol = sym(index);
956 uint filterCarriageReturn();
958 inline uint peekChar();
961 void putString(
const QString &s,
int from = 0);
962 void putStringLiteral(
const QString &s);
963 void putReplacement(
const QString &s);
964 void putReplacementInAttributeValue(
const QString &s);
967 bool scanUntil(
const char *str,
short tokenToInject = -1);
968 bool scanString(
const char *str,
short tokenToInject,
bool requireSpace =
true);
970 putChar(
int(tokenToInject) << 16);
974 void parseEntity(
const QString &value);
977 bool scanAfterLangleBang();
978 bool scanPublicOrSystem();
980 bool scanAfterDefaultDecl();
986 int fastScanLiteralContent();
988 int fastScanContentCharList();
989 int fastScanName(
int *prefix = 0);
990 inline int fastScanNMTOKEN();
994 inline void consumeRule(
int);
997 void raiseWellFormedError(
const QString &message);
1025 qualifiedName.
clear();
1026 namespaceUri.
clear();
1027 if (publicNamespaceDeclarations.
size())
1028 publicNamespaceDeclarations.
clear();
1029 if (attributes.
size())
1031 if (isEmptyElement) {
1033 Tag &tag = tagStack_pop();
1037 isEmptyElement =
false;
1045 qualifiedName.
clear();
1046 namespaceUri.
clear();
1050 publicNotationDeclarations.
clear();
1051 publicEntityDeclarations.
clear();
1053 dtdPublicId.
clear();
1054 dtdSystemId.
clear();
1069 processingInstructionTarget.
clear();
1070 processingInstructionData.
clear();
1077 lockEncoding =
true;
1078 documentVersion.
clear();
1079 documentEncoding.
clear();
1080 #ifndef QT_NO_TEXTCODEC 1082 raiseWellFormedError(QXmlStream::tr(
"Encountered incorrectly encoded content."));
1099 if (resumeReduction) {
1100 act = state_stack[tos-1];
1101 r = resumeReduction;
1102 resumeReduction = 0;
1103 goto ResumeReduction;
1106 act = state_stack[tos];
1113 if (cu & 0xff0000) {
1115 }
else switch (token_char) {
1123 if ((token_char = filterCarriageReturn())) {
1125 lastLineStart = characterOffset + readBufferPos;
1134 if (!tagsDone && !inParseEntity) {
1145 lastLineStart = characterOffset + readBufferPos;
1244 state_stack[tos++] = 0;
1245 state_stack[tos] = 0;
1247 }
else if (act > 0) {
1248 if (++tos == stack_size-1)
1251 Value &val = sym_stack[tos];
1257 textBuffer +=
QChar(token_char);
1259 state_stack[tos] = act;
1263 }
else if (act < 0) {
1266 #if defined (QLALR_DEBUG) 1267 int ridx = rule_index[r];
1268 printf (
"%3d) %s ::=", r + 1,
spell[rule_info[ridx]]);
1270 for (
int i = ridx; i < ridx +
rhs[r]; ++i) {
1271 int symbol = rule_info[i];
1272 if (
const char *name =
spell[symbol])
1273 printf (
" %s", name);
1275 printf (
" #%d", symbol);
1281 act = state_stack[tos++];
1291 if (hasSeenTag || inParseEntity) {
1297 state_stack[tos++] = 0;
1298 state_stack[tos] = 0;
1305 entityReferenceStack.
pop()->isCurrentlyReferenced =
false;
1310 if (!scanString(
spell[
VERSION], VERSION,
false) && atEnd) {
1318 documentVersion = symString(6);
1323 hasExternalDtdSubset =
true;
1324 dtdSystemId = symString(2);
1328 checkPublicLiteral(symString(2));
1329 dtdPublicId = symString(2);
1330 dtdSystemId = symString(4);
1331 hasExternalDtdSubset =
true;
1335 if (!scanPublicOrSystem() && atEnd) {
1339 dtdName = symString(3);
1344 dtdName = symString(3);
1363 && !scanString(
spell[
ANY], ANY,
false)
1371 if (!scanString(
spell[
PCDATA], PCDATA,
false) && atEnd) {
1378 lastAttributeIsCData =
true;
1382 if (!scanAfterDefaultDecl() && atEnd) {
1390 lastAttributeValue.
clear();
1391 lastAttributeIsCData =
false;
1392 if (!scanAttType() && atEnd) {
1401 dtdAttribute.
isCDATA = lastAttributeIsCData;
1403 dtdAttribute.
attributeName = addToStringStorage(symString(1));
1408 if (lastAttributeValue.
isNull()) {
1412 dtdAttribute.
defaultValue = addToStringStorage(lastAttributeValue);
1420 if (referenceToUnparsedEntityDetected && !standalone)
1422 int n = dtdAttributes.
size();
1423 QStringRef tagName = addToStringStorage(symName(3));
1428 dtdAttribute.
tagName = tagName;
1429 for (
int i = 0; i < n; ++i) {
1430 if ((dtdAttributes[i].tagName.
isNull() || dtdAttributes[i].tagName == tagName)
1440 if (!scanPublicOrSystem() && atEnd) {
1445 entityDeclaration.
clear();
1446 entityDeclaration.
name = symString(3);
1450 if (!scanPublicOrSystem() && atEnd) {
1455 entityDeclaration.
clear();
1456 entityDeclaration.
name = symString(5);
1461 if (!scanNData() && atEnd) {
1466 entityDeclaration.
systemId = symString(3);
1471 if (!scanNData() && atEnd) {
1476 checkPublicLiteral((entityDeclaration.
publicId = symString(3)));
1477 entityDeclaration.
systemId = symString(5);
1485 raiseWellFormedError(QXmlStream::tr(
"NDATA in parameter entity declaration."));
1491 if (referenceToUnparsedEntityDetected && !standalone) {
1492 entityDeclarations.
pop();
1497 entityDeclaration.
value = symString(2);
1503 entity.external = entityDeclaration.
external;
1504 hash.
insert(entityName, entity);
1510 int pos = sym(4).pos + sym(4).len;
1511 processingInstructionTarget = symString(3);
1512 if (scanUntil(
"?>")) {
1513 processingInstructionData =
QStringRef(&textBuffer, pos, textBuffer.
size() - pos - 2);
1516 raiseWellFormedError(QXmlStream::tr(
"XML declaration not at start of document."));
1519 raiseWellFormedError(QXmlStream::tr(
"%1 is an invalid processing instruction name.").arg(piTarget));
1528 processingInstructionTarget = symString(3);
1530 raiseWellFormedError(QXmlStream::tr(
"Invalid processing instruction name."));
1534 if (!scanAfterLangleBang() && atEnd) {
1541 if (!scanUntil(
"--")) {
1549 int pos = sym(1).pos + 4;
1550 text =
QStringRef(&textBuffer, pos, textBuffer.
size() - pos - 3);
1557 int pos = sym(2).pos;
1558 if (scanUntil(
"]]>", -1)) {
1559 text =
QStringRef(&textBuffer, pos, textBuffer.
size() - pos - 3);
1567 if (!scanPublicOrSystem() && atEnd) {
1572 notationDeclaration.
name = symString(3);
1577 notationDeclaration.
systemId = symString(3);
1584 checkPublicLiteral((notationDeclaration.
publicId = symString(3)));
1589 checkPublicLiteral((notationDeclaration.
publicId = symString(3)));
1590 notationDeclaration.
systemId = symString(5);
1598 sym(1).len += fastScanContentCharList();
1599 if (atEnd && !inParseEntity) {
1626 sym(1).len += sym(2).len;
1630 if (normalizeLiterals)
1635 sym(1).len += fastScanLiteralContent();
1644 raiseWellFormedError(QXmlStream::tr(
"%1 is an invalid PUBLIC identifier.").arg(symString(1).
toString()));
1664 sym(1).len += sym(2).len;
1675 lastAttributeValue = symString(1);
1682 sym(1).len += sym(2).len;
1693 ns ==
QLatin1String(
"http://www.w3.org/XML/1998/namespace"))
1694 raiseWellFormedError(QXmlStream::tr(
"Illegal namespace declaration."));
1696 namespaceDeclaration.
namespaceUri = addToStringStorage(ns);
1699 attribute.
key = sym(1);
1700 attribute.
value = sym(5);
1702 QStringRef attributeQualifiedName = symName(1);
1704 for (
int a = 0;
a < dtdAttributes.
size(); ++
a) {
1707 && dtdAttribute.
tagName == qualifiedName
1716 int pos = textBuffer.
size();
1718 bool wasSpace =
true;
1719 for (
int i = 0; i < attribute.
value.
len; ++i) {
1728 textBuffer += textBuffer.
at(attribute.
value.
pos + i);
1732 while (n && textBuffer.
at(pos + n - 1).
unicode() ==
' ')
1737 if (prefix ==
QLatin1String(
"xmlns") && namespaceProcessing) {
1741 attributeStack.
pop();
1743 ^ (namespaceUri ==
QLatin1String(
"http://www.w3.org/XML/1998/namespace")))
1744 || namespaceUri ==
QLatin1String(
"http://www.w3.org/2000/xmlns/")
1747 raiseWellFormedError(QXmlStream::tr(
"Illegal namespace declaration."));
1749 namespaceDeclaration.
prefix = addToStringStorage(namespacePrefix);
1750 namespaceDeclaration.
namespaceUri = addToStringStorage(namespaceUri);
1756 normalizeLiterals =
true;
1757 Tag &tag = tagStack_push();
1759 name = tag.
name = addToStringStorage(symString(2));
1760 qualifiedName = tag.
qualifiedName = addToStringStorage(symName(2));
1762 raiseWellFormedError(QXmlStream::tr(
"Invalid XML name."));
1766 isEmptyElement =
true;
1772 if (tagStack.size() == 1 && hasSeenTag && !inParseEntity)
1773 raiseWellFormedError(QXmlStream::tr(
"Extra content at end of document."));
1779 Tag &tag = tagStack_pop();
1784 if (qualifiedName != symName(3))
1785 raiseWellFormedError(QXmlStream::tr(
"Opening and ending tag mismatch."));
1789 if (entitiesMustBeDeclared()) {
1790 raiseWellFormedError(QXmlStream::tr(
"Entity '%1' not declared.").arg(unresolvedEntity));
1794 name = &unresolvedEntity;
1798 sym(1).len += sym(2).len + 1;
1799 QString reference = symString(2).toString();
1800 if (entityHash.
contains(reference)) {
1801 Entity &entity = entityHash[reference];
1803 raiseWellFormedError(QXmlStream::tr(
"Reference to unparsed entity '%1'.").arg(reference));
1806 parseEntity(entity.
value);
1810 putStringLiteral(entity.
value);
1811 else if (referenceEntity(entity))
1812 putReplacement(entity.
value);
1813 textBuffer.
chop(2 + sym(2).len);
1819 if (entityResolver) {
1820 QString replacementText = resolveUndeclaredEntity(reference);
1821 if (!replacementText.
isNull()) {
1822 putReplacement(replacementText);
1823 textBuffer.
chop(2 + sym(2).len);
1830 unresolvedEntity = symString(2).toString();
1831 textBuffer.
chop(2 + sym(2).len);
1837 sym(1).len += sym(2).len + 1;
1838 QString reference = symString(2).toString();
1839 if (parameterEntityHash.
contains(reference)) {
1840 referenceToParameterEntityDetected =
true;
1841 Entity &entity = parameterEntityHash[reference];
1843 referenceToUnparsedEntityDetected =
true;
1845 if (referenceEntity(entity))
1846 putString(entity.
value);
1847 textBuffer.
chop(2 + sym(2).len);
1850 }
else if (entitiesMustBeDeclared()) {
1851 raiseWellFormedError(QXmlStream::tr(
"Entity '%1' not declared.").arg(symString(2).
toString()));
1856 sym(1).len += sym(2).len + 1;
1860 sym(1).len += sym(2).len + 1;
1861 QString reference = symString(2).toString();
1862 if (entityHash.
contains(reference)) {
1863 Entity &entity = entityHash[reference];
1865 raiseWellFormedError(QXmlStream::tr(
"Reference to external entity '%1' in attribute value.").arg(reference));
1869 parseEntity(entity.
value);
1873 putStringLiteral(entity.
value);
1874 else if (referenceEntity(entity))
1875 putReplacementInAttributeValue(entity.
value);
1876 textBuffer.
chop(2 + sym(2).len);
1881 if (entityResolver) {
1882 QString replacementText = resolveUndeclaredEntity(reference);
1883 if (!replacementText.
isNull()) {
1884 putReplacement(replacementText);
1885 textBuffer.
chop(2 + sym(2).len);
1890 if (entitiesMustBeDeclared()) {
1891 raiseWellFormedError(QXmlStream::tr(
"Entity '%1' not declared.").arg(reference));
1896 if (
uint s = resolveCharRef(3)) {
1900 putChar((
LETTER << 16) | s);
1902 textBuffer.
chop(3 + sym(3).len);
1905 raiseWellFormedError(QXmlStream::tr(
"Invalid character reference."));
1911 sym(1).len += sym(2).len;
1915 sym(1).len += fastScanSpace();
1923 sym(1).len += fastScanName(&sym(1).prefix);
1931 sym(1).len += fastScanName();
1943 sym(1).len += fastScanNMTOKEN();
1964 #endif //QT_NO_XMLSTREAMREADER.xml 1967 #endif // QXMLSTREAM_P_H uint referenceToUnparsedEntityDetected
static uint hash(const uchar *p, int n)
const T & at(int index) const
QString toString() const
Returns a copy of the string reference as a QString object.
static const short goto_default[]
void clear()
Clears the contents of the string reference by making it null and empty.
const QChar at(int i) const
Returns the character at the given index position in the string.
static const short action_info[]
ushort unicode() const
This is an overloaded member function, provided for convenience. It differs from the above function o...
QXmlStreamSimpleStack< DtdAttribute > dtdAttributes
QXmlStreamAttributes attributes
QStringRef attributePrefix
QHash< QString, Entity > entityHash
Q_CORE_EXPORT void qFree(void *ptr)
The QByteArray class provides an array of bytes.
void chop(int n)
Removes n characters from the end of the string.
The QTextDecoder class provides a state-based decoder.
QXmlStreamEntityResolver * entityResolver
bool lastAttributeIsCData
static bool isWhitespace(char c)
QStringRef symString(int index, int offset)
QXmlStreamSimpleStack< Attribute > attributeStack
QLatin1String(DBUS_INTERFACE_DBUS))) Q_GLOBAL_STATIC_WITH_ARGS(QString
long ASN1_INTEGER_get ASN1_INTEGER * a
uint hasCheckedStartDocument
Q_CORE_EXPORT void * qRealloc(void *ptr, size_t size)
void setType(const QXmlStreamReader::TokenType t)
Never assign to variable type directly.
The QString class provides a Unicode character string.
QStringRef attributeQualifiedName
The QHash class is a template class that provides a hash-table-based dictionary.
void injectToken(ushort tokenToInject)
Entity(const QString &str=QString())
TokenType
This enum specifies the type of token the reader just read.
QStringRef symPrefix(const Value &symbol)
bool contains(const Key &key) const
Returns true if the hash contains an item with the key; otherwise returns false.
uint isCurrentlyReferenced
The QChar class provides a 16-bit Unicode character.
QChar * data()
Returns a pointer to the data stored in the QString.
bool isNamespaceAttribute
uint referenceToParameterEntityDetected
Q_DECL_CONSTEXPR const T & qMax(const T &a, const T &b)
void resize(int size)
Sets the size of the vector to size.
iterator insert(const Key &key, const T &value)
Inserts a new item with the key and a value of value.
Value & sym(int index) const
static const short action_check[]
void reserve(int size)
Attempts to allocate memory for at least size characters.
bool referenceEntity(Entity &entity)
static QString toString(Register *reg, int type, bool *ok=0)
bool entitiesMustBeDeclared() const
int size() const
Returns the number of characters referred to by the string reference.
QStringRef processingInstructionTarget
The QXmlStreamEntityResolver class provides an entity resolver for a QXmlStreamReader.
QHash< QString, Entity > parameterEntityHash
void clear()
Removes all the elements from the vector and releases the memory used by the vector.
QXmlStreamSimpleStack< uint > putStack
int size() const
Returns the number of characters in this string.
const QChar * unicode() const
Returns a '\0'-terminated Unicode representation of the string.
bool isEmpty() const
Returns true if the string has no characters; otherwise returns false.
static unsigned int getChar(const QChar *str, int &i, const int len)
bool isEmpty() const
Returns true if the string reference has no characters; otherwise returns false.
The QLatin1String class provides a thin wrapper around an US-ASCII/Latin-1 encoded string literal...
T & operator[](int index)
const QChar * unicode() const
Returns a Unicode representation of the string reference.
static const short action_default[]
QXmlStreamNotationDeclarations publicNotationDeclarations
QXmlStreamSimpleStack< Entity * > entityReferenceStack
static const short action_index[]
The QStringRef class provides a thin wrapper around QString substrings.
QXmlStreamReader::Error error
void resize(int size)
Sets the size of the string to size characters.
bool isNull() const
Returns true if this string is null; otherwise returns false.
bool hasFailure() const
Determines whether the decoder encountered a failure while decoding the input.
static int nt_action(int state, int nt)
#define Q_DECLARE_PUBLIC(Class)
QXmlStreamReader::TokenType type
QStringRef symString(const Value &symbol)
int compare(const QString &s) const
QStringRef symName(int index)
QStringRef lastAttributeValue
The QXmlStreamAttributes class represents a vector of QXmlStreamAttribute.
QString simplified() const Q_REQUIRED_RESULT
Returns a string that has whitespace removed from the start and the end, and that has each sequence o...
void clear()
Clears the contents of the string and makes it empty.
uint hasExternalDtdSubset
QXmlStreamSimpleStack< NotationDeclaration > notationDeclarations
Error
This enum specifies different error cases.
void reserve(int extraCapacity)
QStringRef symName(const Value &symbol)
QStringRef documentVersion
static int t_action(int state, int token)
The QXmlStreamReader class provides a fast parser for reading well-formed XML via a simple streaming ...
static Entity createLiteral(const QString &entity)
bool isNull() const
Returns true if string() returns a null pointer or a pointer to a null string; otherwise returns true...
The QTextCodec class provides conversions between text encodings.
QXmlStreamReaderPrivate * entityParser
The QIODevice class is the base interface class of all I/O devices in Qt.
QStringRef symString(int index)
QString & insert(int i, QChar c)
static void normalize(double &x, double &y)
static bool isPublicID(const QString &candidate)
Determines whether c is a valid instance of production [12] PubidLiteral in the XML 1...
QXmlStreamEntityDeclarations publicEntityDeclarations
int size() const
Returns the number of items in the vector.
#define Q_DECLARE_TR_FUNCTIONS(context)
The Q_DECLARE_TR_FUNCTIONS() macro declares and implements two translation functions, tr() and trUtf8(), with these signatures:
static bool isNCName(const QStringRef &ncName)
Determines whether c is a valid instance of production [4]NCName in the XML 1.0 Namespaces specificat...
The QLatin1Char class provides an 8-bit ASCII/Latin-1 character.
QXmlStreamNamespaceDeclarations publicNamespaceDeclarations
QXmlStreamSimpleStack< EntityDeclaration > entityDeclarations
QStringRef symPrefix(int index)
static const char *const spell[]
static QString fromUcs4(const uint *, int size=-1)
Returns a QString initialized with the first size characters of the Unicode string unicode (ISO-10646...
#define forever
This macro is provided for convenience for writing infinite loops.