oga 0.3.2-java → 0.3.3-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0a605ea6e3855cdb7db99e954d314f251b453865
4
- data.tar.gz: 79a7612cce7622c0ace935ef9942cfdf1f8fe4fe
3
+ metadata.gz: 5e5eae7184738ed26011bc86192ce7468a56d8d0
4
+ data.tar.gz: fa9d98441fa84f22ef644e665ec5c41182f2951e
5
5
  SHA512:
6
- metadata.gz: f9f5aca265b4ebfae680e3f23e03b28b41ce526e9fe93dc9f5ad486fd80409a59f9784a3f0651e394c763546770af12e3ffdc66331749bde317c681fa77e0eb0
7
- data.tar.gz: 91d5e28c3ab6f50aa1fac0db192c43cba5e0667f729dcdebcce6012cb399b2ca6329ff29b9de354d859aa988646cca24c0af7c80dfe1379c7fc1b984c3366308
6
+ metadata.gz: aa892fc40ac36551956ef575d9ab5e2dab140189bda839a69967e674623a7f31c8aaca66d60be5220e27aa22bf6cc8902474e0b0d6ff0287b30db28c52a1460f
7
+ data.tar.gz: d0a80c1f2fbb161d8eef7eebeea2f77de994fc26be170a7d5b6d378a50220e17a724a2236f025ba44991b96d2c7272a84eb69ab005ab4e87c3478083cdb4f218
data/ext/c/lexer.c CHANGED
@@ -21,15 +21,19 @@ on `ts` and `te`) so the macro ignores this argument.
21
21
  #define advance_line(amount) \
22
22
  rb_funcall(self, id_advance_line, 1, INT2NUM(amount));
23
23
 
24
- #define literal_html_element_p() \
25
- rb_funcall(self, id_literal_html_element_p, 0) == Qtrue
24
+ #define html_script_p() \
25
+ rb_funcall(self, id_html_script_p, 0) == Qtrue
26
+
27
+ #define html_style_p() \
28
+ rb_funcall(self, id_html_style_p, 0) == Qtrue
26
29
 
27
30
  ID id_advance_line;
28
- ID id_literal_html_element_p;
31
+ ID id_html_script_p;
32
+ ID id_html_style_p;
29
33
  ID id_html;
30
34
 
31
35
 
32
- #line 30 "ext/c/lexer.rl"
36
+ #line 34 "ext/c/lexer.rl"
33
37
 
34
38
  /**
35
39
  * Calls a method defined in the Ruby side of the lexer. The String value is
@@ -66,29 +70,30 @@ void liboga_xml_lexer_callback_simple(VALUE self, VALUE name)
66
70
  }
67
71
 
68
72
 
69
- #line 70 "ext/c/lexer.c"
70
- static const int c_lexer_start = 22;
71
- static const int c_lexer_first_final = 22;
73
+ #line 74 "ext/c/lexer.c"
74
+ static const int c_lexer_start = 34;
75
+ static const int c_lexer_first_final = 34;
72
76
  static const int c_lexer_error = 0;
73
77
 
74
- static const int c_lexer_en_comment_body = 28;
75
- static const int c_lexer_en_cdata_body = 31;
76
- static const int c_lexer_en_proc_ins_body = 34;
77
- static const int c_lexer_en_string_squote = 37;
78
- static const int c_lexer_en_string_dquote = 39;
79
- static const int c_lexer_en_doctype_inline = 41;
80
- static const int c_lexer_en_doctype = 43;
81
- static const int c_lexer_en_xml_decl = 55;
82
- static const int c_lexer_en_element_name = 58;
83
- static const int c_lexer_en_html_attribute_value = 60;
84
- static const int c_lexer_en_xml_attribute_value = 62;
85
- static const int c_lexer_en_element_head = 63;
86
- static const int c_lexer_en_text = 66;
87
- static const int c_lexer_en_literal_html_element = 70;
88
- static const int c_lexer_en_main = 22;
89
-
90
-
91
- #line 66 "ext/c/lexer.rl"
78
+ static const int c_lexer_en_comment_body = 40;
79
+ static const int c_lexer_en_cdata_body = 43;
80
+ static const int c_lexer_en_proc_ins_body = 46;
81
+ static const int c_lexer_en_string_squote = 49;
82
+ static const int c_lexer_en_string_dquote = 51;
83
+ static const int c_lexer_en_doctype_inline = 53;
84
+ static const int c_lexer_en_doctype = 55;
85
+ static const int c_lexer_en_xml_decl = 68;
86
+ static const int c_lexer_en_element_name = 71;
87
+ static const int c_lexer_en_html_attribute_value = 73;
88
+ static const int c_lexer_en_xml_attribute_value = 75;
89
+ static const int c_lexer_en_element_head = 76;
90
+ static const int c_lexer_en_text = 80;
91
+ static const int c_lexer_en_html_script = 84;
92
+ static const int c_lexer_en_html_style = 88;
93
+ static const int c_lexer_en_main = 34;
94
+
95
+
96
+ #line 70 "ext/c/lexer.rl"
92
97
 
93
98
  /**
94
99
  * Lexes the String specifies as the method argument. Token values have the
@@ -152,7 +157,7 @@ VALUE oga_xml_lexer_advance(VALUE self, VALUE data_block)
152
157
  lines = state->lines;
153
158
 
154
159
 
155
- #line 156 "ext/c/lexer.c"
160
+ #line 161 "ext/c/lexer.c"
156
161
  {
157
162
  if ( p == pe )
158
163
  goto _test_eof;
@@ -160,8 +165,8 @@ VALUE oga_xml_lexer_advance(VALUE self, VALUE data_block)
160
165
 
161
166
  _again:
162
167
  switch ( ( state->cs) ) {
163
- case 22: goto st22;
164
- case 23: goto st23;
168
+ case 34: goto st34;
169
+ case 35: goto st35;
165
170
  case 1: goto st1;
166
171
  case 2: goto st2;
167
172
  case 3: goto st3;
@@ -171,7 +176,7 @@ _again:
171
176
  case 7: goto st7;
172
177
  case 8: goto st8;
173
178
  case 9: goto st9;
174
- case 24: goto st24;
179
+ case 36: goto st36;
175
180
  case 10: goto st10;
176
181
  case 11: goto st11;
177
182
  case 12: goto st12;
@@ -181,30 +186,17 @@ _again:
181
186
  case 16: goto st16;
182
187
  case 17: goto st17;
183
188
  case 18: goto st18;
184
- case 25: goto st25;
185
- case 26: goto st26;
186
- case 27: goto st27;
187
- case 28: goto st28;
188
- case 29: goto st29;
189
- case 30: goto st30;
190
- case 19: goto st19;
191
- case 31: goto st31;
192
- case 32: goto st32;
193
- case 33: goto st33;
194
- case 20: goto st20;
195
- case 34: goto st34;
196
- case 35: goto st35;
197
- case 36: goto st36;
198
189
  case 37: goto st37;
199
190
  case 38: goto st38;
200
191
  case 39: goto st39;
201
192
  case 40: goto st40;
202
193
  case 41: goto st41;
203
194
  case 42: goto st42;
195
+ case 19: goto st19;
204
196
  case 43: goto st43;
205
- case 0: goto st0;
206
197
  case 44: goto st44;
207
198
  case 45: goto st45;
199
+ case 20: goto st20;
208
200
  case 46: goto st46;
209
201
  case 47: goto st47;
210
202
  case 48: goto st48;
@@ -215,6 +207,7 @@ _again:
215
207
  case 53: goto st53;
216
208
  case 54: goto st54;
217
209
  case 55: goto st55;
210
+ case 0: goto st0;
218
211
  case 56: goto st56;
219
212
  case 57: goto st57;
220
213
  case 58: goto st58;
@@ -225,7 +218,6 @@ _again:
225
218
  case 63: goto st63;
226
219
  case 64: goto st64;
227
220
  case 65: goto st65;
228
- case 21: goto st21;
229
221
  case 66: goto st66;
230
222
  case 67: goto st67;
231
223
  case 68: goto st68;
@@ -243,6 +235,28 @@ _again:
243
235
  case 80: goto st80;
244
236
  case 81: goto st81;
245
237
  case 82: goto st82;
238
+ case 83: goto st83;
239
+ case 84: goto st84;
240
+ case 85: goto st85;
241
+ case 86: goto st86;
242
+ case 21: goto st21;
243
+ case 22: goto st22;
244
+ case 23: goto st23;
245
+ case 24: goto st24;
246
+ case 25: goto st25;
247
+ case 26: goto st26;
248
+ case 27: goto st27;
249
+ case 87: goto st87;
250
+ case 88: goto st88;
251
+ case 89: goto st89;
252
+ case 90: goto st90;
253
+ case 28: goto st28;
254
+ case 29: goto st29;
255
+ case 30: goto st30;
256
+ case 31: goto st31;
257
+ case 32: goto st32;
258
+ case 33: goto st33;
259
+ case 91: goto st91;
246
260
  default: break;
247
261
  }
248
262
 
@@ -252,138 +266,146 @@ _resume:
252
266
  switch ( ( state->cs) )
253
267
  {
254
268
  tr0:
255
- ( state->cs) = 22;
256
- #line 471 "ext/ragel/base_lexer.rl"
269
+ ( state->cs) = 34;
270
+ #line 505 "ext/ragel/base_lexer.rl"
257
271
  {{p = ((te))-1;}{
258
272
  p--;
259
- ( state->cs) = 66;
273
+ ( state->cs) = 80;
260
274
  }}
261
275
  goto _again;
262
276
  tr4:
263
- ( state->cs) = 22;
264
- #line 74 "ext/ragel/base_lexer.rl"
277
+ ( state->cs) = 34;
278
+ #line 84 "ext/ragel/base_lexer.rl"
265
279
  {te = p+1;{
266
280
  callback_simple(id_on_comment_start);
267
281
 
268
- ( state->cs) = 28;
282
+ ( state->cs) = 40;
269
283
  }}
270
284
  goto _again;
271
285
  tr17:
272
- ( state->cs) = 22;
273
- #line 113 "ext/ragel/base_lexer.rl"
286
+ ( state->cs) = 34;
287
+ #line 123 "ext/ragel/base_lexer.rl"
274
288
  {te = p+1;{
275
289
  callback_simple(id_on_cdata_start);
276
290
 
277
- ( state->cs) = 31;
291
+ ( state->cs) = 43;
278
292
  }}
279
293
  goto _again;
280
294
  tr20:
281
- #line 357 "ext/ragel/base_lexer.rl"
295
+ #line 375 "ext/ragel/base_lexer.rl"
282
296
  {te = p+1;{
283
297
  callback_simple(id_on_element_end);
284
298
  }}
285
- goto st22;
286
- tr29:
287
- ( state->cs) = 22;
288
- #line 471 "ext/ragel/base_lexer.rl"
299
+ goto st34;
300
+ tr42:
301
+ ( state->cs) = 34;
302
+ #line 505 "ext/ragel/base_lexer.rl"
289
303
  {te = p+1;{
290
304
  p--;
291
- ( state->cs) = 66;
305
+ ( state->cs) = 80;
292
306
  }}
293
307
  goto _again;
294
- tr31:
295
- ( state->cs) = 22;
296
- #line 471 "ext/ragel/base_lexer.rl"
308
+ tr44:
309
+ ( state->cs) = 34;
310
+ #line 505 "ext/ragel/base_lexer.rl"
297
311
  {te = p;p--;{
298
312
  p--;
299
- ( state->cs) = 66;
313
+ ( state->cs) = 80;
300
314
  }}
301
315
  goto _again;
302
- tr33:
303
- ( state->cs) = 22;
304
- #line 351 "ext/ragel/base_lexer.rl"
316
+ tr46:
317
+ ( state->cs) = 34;
318
+ #line 369 "ext/ragel/base_lexer.rl"
305
319
  {te = p+1;{
306
320
  callback_simple(id_on_element_start);
307
321
  p--;
308
- ( state->cs) = 58;
322
+ ( state->cs) = 71;
309
323
  }}
310
324
  goto _again;
311
- tr35:
312
- ( state->cs) = 22;
313
- #line 245 "ext/ragel/base_lexer.rl"
325
+ tr48:
326
+ ( state->cs) = 34;
327
+ #line 255 "ext/ragel/base_lexer.rl"
314
328
  {te = p;p--;{
315
329
  callback_simple(id_on_doctype_start);
316
- ( state->cs) = 43;
330
+
331
+ if ( lines > 0 )
332
+ {
333
+ advance_line(lines);
334
+
335
+ lines = 0;
336
+ }
337
+
338
+ ( state->cs) = 55;
317
339
  }}
318
340
  goto _again;
319
- tr36:
320
- ( state->cs) = 22;
341
+ tr49:
342
+ ( state->cs) = 34;
321
343
  #line 1 "NONE"
322
344
  { switch( ( state->act) ) {
323
- case 45:
345
+ case 48:
324
346
  {{p = ((te))-1;}
325
347
  callback_simple(id_on_xml_decl_start);
326
- ( state->cs) = 55;
348
+ ( state->cs) = 68;
327
349
  }
328
350
  break;
329
- case 48:
351
+ case 51:
330
352
  {{p = ((te))-1;}
331
353
  callback_simple(id_on_proc_ins_start);
332
354
  callback(id_on_proc_ins_name, data, encoding, ts + 2, te);
333
355
 
334
- ( state->cs) = 34;
356
+ ( state->cs) = 46;
335
357
  }
336
358
  break;
337
359
  }
338
360
  }
339
361
  goto _again;
340
- tr37:
341
- ( state->cs) = 22;
342
- #line 155 "ext/ragel/base_lexer.rl"
362
+ tr50:
363
+ ( state->cs) = 34;
364
+ #line 165 "ext/ragel/base_lexer.rl"
343
365
  {te = p;p--;{
344
366
  callback_simple(id_on_proc_ins_start);
345
367
  callback(id_on_proc_ins_name, data, encoding, ts + 2, te);
346
368
 
347
- ( state->cs) = 34;
369
+ ( state->cs) = 46;
348
370
  }}
349
371
  goto _again;
350
- st22:
372
+ st34:
351
373
  #line 1 "NONE"
352
374
  {ts = 0;}
353
375
  if ( ++p == pe )
354
- goto _test_eof22;
355
- case 22:
376
+ goto _test_eof34;
377
+ case 34:
356
378
  #line 1 "NONE"
357
379
  {ts = p;}
358
- #line 359 "ext/c/lexer.c"
380
+ #line 381 "ext/c/lexer.c"
359
381
  if ( (*p) == 60 )
360
- goto tr30;
361
- goto tr29;
362
- tr30:
382
+ goto tr43;
383
+ goto tr42;
384
+ tr43:
363
385
  #line 1 "NONE"
364
386
  {te = p+1;}
365
- goto st23;
366
- st23:
387
+ goto st35;
388
+ st35:
367
389
  if ( ++p == pe )
368
- goto _test_eof23;
369
- case 23:
370
- #line 371 "ext/c/lexer.c"
390
+ goto _test_eof35;
391
+ case 35:
392
+ #line 393 "ext/c/lexer.c"
371
393
  switch( (*p) ) {
372
394
  case 33: goto st1;
373
- case 45: goto tr33;
395
+ case 45: goto tr46;
374
396
  case 47: goto st16;
375
397
  case 63: goto st18;
376
- case 95: goto tr33;
398
+ case 95: goto tr46;
377
399
  }
378
400
  if ( (*p) < 65 ) {
379
401
  if ( 48 <= (*p) && (*p) <= 57 )
380
- goto tr33;
402
+ goto tr46;
381
403
  } else if ( (*p) > 90 ) {
382
404
  if ( 97 <= (*p) && (*p) <= 122 )
383
- goto tr33;
405
+ goto tr46;
384
406
  } else
385
- goto tr33;
386
- goto tr31;
407
+ goto tr46;
408
+ goto tr44;
387
409
  st1:
388
410
  if ( ++p == pe )
389
411
  goto _test_eof1;
@@ -461,19 +483,30 @@ st9:
461
483
  goto _test_eof9;
462
484
  case 9:
463
485
  switch( (*p) ) {
464
- case 9: goto st24;
465
- case 32: goto st24;
486
+ case 13: goto tr11;
487
+ case 32: goto tr11;
466
488
  }
489
+ if ( 9 <= (*p) && (*p) <= 10 )
490
+ goto tr11;
467
491
  goto tr0;
468
- st24:
492
+ tr11:
493
+ #line 56 "ext/ragel/base_lexer.rl"
494
+ {
495
+ if ( (*p) == '\n' ) lines++;
496
+ }
497
+ goto st36;
498
+ st36:
469
499
  if ( ++p == pe )
470
- goto _test_eof24;
471
- case 24:
500
+ goto _test_eof36;
501
+ case 36:
502
+ #line 503 "ext/c/lexer.c"
472
503
  switch( (*p) ) {
473
- case 9: goto st24;
474
- case 32: goto st24;
504
+ case 13: goto tr11;
505
+ case 32: goto tr11;
475
506
  }
476
- goto tr35;
507
+ if ( 9 <= (*p) && (*p) <= 10 )
508
+ goto tr11;
509
+ goto tr48;
477
510
  st10:
478
511
  if ( ++p == pe )
479
512
  goto _test_eof10;
@@ -559,7 +592,7 @@ case 18:
559
592
  switch( (*p) ) {
560
593
  case 45: goto tr21;
561
594
  case 95: goto tr21;
562
- case 120: goto st26;
595
+ case 120: goto st38;
563
596
  }
564
597
  if ( (*p) < 65 ) {
565
598
  if ( 48 <= (*p) && (*p) <= 57 )
@@ -573,20 +606,20 @@ case 18:
573
606
  tr21:
574
607
  #line 1 "NONE"
575
608
  {te = p+1;}
576
- #line 155 "ext/ragel/base_lexer.rl"
577
- {( state->act) = 48;}
578
- goto st25;
579
- tr39:
609
+ #line 165 "ext/ragel/base_lexer.rl"
610
+ {( state->act) = 51;}
611
+ goto st37;
612
+ tr52:
580
613
  #line 1 "NONE"
581
614
  {te = p+1;}
582
- #line 301 "ext/ragel/base_lexer.rl"
583
- {( state->act) = 45;}
584
- goto st25;
585
- st25:
615
+ #line 319 "ext/ragel/base_lexer.rl"
616
+ {( state->act) = 48;}
617
+ goto st37;
618
+ st37:
586
619
  if ( ++p == pe )
587
- goto _test_eof25;
588
- case 25:
589
- #line 590 "ext/c/lexer.c"
620
+ goto _test_eof37;
621
+ case 37:
622
+ #line 623 "ext/c/lexer.c"
590
623
  switch( (*p) ) {
591
624
  case 45: goto tr21;
592
625
  case 95: goto tr21;
@@ -599,15 +632,15 @@ case 25:
599
632
  goto tr21;
600
633
  } else
601
634
  goto tr21;
602
- goto tr36;
603
- st26:
635
+ goto tr49;
636
+ st38:
604
637
  if ( ++p == pe )
605
- goto _test_eof26;
606
- case 26:
638
+ goto _test_eof38;
639
+ case 38:
607
640
  switch( (*p) ) {
608
641
  case 45: goto tr21;
609
642
  case 95: goto tr21;
610
- case 109: goto st27;
643
+ case 109: goto st39;
611
644
  }
612
645
  if ( (*p) < 65 ) {
613
646
  if ( 48 <= (*p) && (*p) <= 57 )
@@ -617,15 +650,15 @@ case 26:
617
650
  goto tr21;
618
651
  } else
619
652
  goto tr21;
620
- goto tr37;
621
- st27:
653
+ goto tr50;
654
+ st39:
622
655
  if ( ++p == pe )
623
- goto _test_eof27;
624
- case 27:
656
+ goto _test_eof39;
657
+ case 39:
625
658
  switch( (*p) ) {
626
659
  case 45: goto tr21;
627
660
  case 95: goto tr21;
628
- case 108: goto tr39;
661
+ case 108: goto tr52;
629
662
  }
630
663
  if ( (*p) < 65 ) {
631
664
  if ( 48 <= (*p) && (*p) <= 57 )
@@ -635,9 +668,9 @@ case 27:
635
668
  goto tr21;
636
669
  } else
637
670
  goto tr21;
638
- goto tr37;
671
+ goto tr50;
639
672
  tr23:
640
- #line 81 "ext/ragel/base_lexer.rl"
673
+ #line 91 "ext/ragel/base_lexer.rl"
641
674
  {{p = ((te))-1;}{
642
675
  callback(id_on_comment_body, data, encoding, ts, te);
643
676
 
@@ -648,18 +681,18 @@ tr23:
648
681
  lines = 0;
649
682
  }
650
683
  }}
651
- goto st28;
684
+ goto st40;
652
685
  tr24:
653
- ( state->cs) = 28;
654
- #line 92 "ext/ragel/base_lexer.rl"
686
+ ( state->cs) = 40;
687
+ #line 102 "ext/ragel/base_lexer.rl"
655
688
  {te = p+1;{
656
689
  callback_simple(id_on_comment_end);
657
690
 
658
- ( state->cs) = 22;
691
+ ( state->cs) = 34;
659
692
  }}
660
693
  goto _again;
661
- tr42:
662
- #line 81 "ext/ragel/base_lexer.rl"
694
+ tr55:
695
+ #line 91 "ext/ragel/base_lexer.rl"
663
696
  {te = p;p--;{
664
697
  callback(id_on_comment_body, data, encoding, ts, te);
665
698
 
@@ -670,49 +703,49 @@ tr42:
670
703
  lines = 0;
671
704
  }
672
705
  }}
673
- goto st28;
674
- st28:
706
+ goto st40;
707
+ st40:
675
708
  #line 1 "NONE"
676
709
  {ts = 0;}
677
710
  if ( ++p == pe )
678
- goto _test_eof28;
679
- case 28:
711
+ goto _test_eof40;
712
+ case 40:
680
713
  #line 1 "NONE"
681
714
  {ts = p;}
682
- #line 683 "ext/c/lexer.c"
715
+ #line 716 "ext/c/lexer.c"
683
716
  if ( (*p) == 45 )
684
- goto tr41;
685
- goto tr40;
686
- tr40:
687
- #line 51 "ext/ragel/base_lexer.rl"
717
+ goto tr54;
718
+ goto tr53;
719
+ tr53:
720
+ #line 56 "ext/ragel/base_lexer.rl"
688
721
  {
689
722
  if ( (*p) == '\n' ) lines++;
690
723
  }
691
- goto st29;
692
- st29:
724
+ goto st41;
725
+ st41:
693
726
  if ( ++p == pe )
694
- goto _test_eof29;
695
- case 29:
696
- #line 697 "ext/c/lexer.c"
727
+ goto _test_eof41;
728
+ case 41:
729
+ #line 730 "ext/c/lexer.c"
697
730
  if ( (*p) == 45 )
698
- goto tr42;
699
- goto tr40;
700
- tr41:
731
+ goto tr55;
732
+ goto tr53;
733
+ tr54:
701
734
  #line 1 "NONE"
702
735
  {te = p+1;}
703
- #line 51 "ext/ragel/base_lexer.rl"
736
+ #line 56 "ext/ragel/base_lexer.rl"
704
737
  {
705
738
  if ( (*p) == '\n' ) lines++;
706
739
  }
707
- goto st30;
708
- st30:
740
+ goto st42;
741
+ st42:
709
742
  if ( ++p == pe )
710
- goto _test_eof30;
711
- case 30:
712
- #line 713 "ext/c/lexer.c"
743
+ goto _test_eof42;
744
+ case 42:
745
+ #line 746 "ext/c/lexer.c"
713
746
  if ( (*p) == 45 )
714
747
  goto st19;
715
- goto tr42;
748
+ goto tr55;
716
749
  st19:
717
750
  if ( ++p == pe )
718
751
  goto _test_eof19;
@@ -721,7 +754,7 @@ case 19:
721
754
  goto tr24;
722
755
  goto tr23;
723
756
  tr25:
724
- #line 120 "ext/ragel/base_lexer.rl"
757
+ #line 130 "ext/ragel/base_lexer.rl"
725
758
  {{p = ((te))-1;}{
726
759
  callback(id_on_cdata_body, data, encoding, ts, te);
727
760
 
@@ -732,18 +765,18 @@ tr25:
732
765
  lines = 0;
733
766
  }
734
767
  }}
735
- goto st31;
768
+ goto st43;
736
769
  tr26:
737
- ( state->cs) = 31;
738
- #line 131 "ext/ragel/base_lexer.rl"
770
+ ( state->cs) = 43;
771
+ #line 141 "ext/ragel/base_lexer.rl"
739
772
  {te = p+1;{
740
773
  callback_simple(id_on_cdata_end);
741
774
 
742
- ( state->cs) = 22;
775
+ ( state->cs) = 34;
743
776
  }}
744
777
  goto _again;
745
- tr46:
746
- #line 120 "ext/ragel/base_lexer.rl"
778
+ tr59:
779
+ #line 130 "ext/ragel/base_lexer.rl"
747
780
  {te = p;p--;{
748
781
  callback(id_on_cdata_body, data, encoding, ts, te);
749
782
 
@@ -754,49 +787,49 @@ tr46:
754
787
  lines = 0;
755
788
  }
756
789
  }}
757
- goto st31;
758
- st31:
790
+ goto st43;
791
+ st43:
759
792
  #line 1 "NONE"
760
793
  {ts = 0;}
761
794
  if ( ++p == pe )
762
- goto _test_eof31;
763
- case 31:
795
+ goto _test_eof43;
796
+ case 43:
764
797
  #line 1 "NONE"
765
798
  {ts = p;}
766
- #line 767 "ext/c/lexer.c"
799
+ #line 800 "ext/c/lexer.c"
767
800
  if ( (*p) == 93 )
768
- goto tr45;
769
- goto tr44;
770
- tr44:
771
- #line 51 "ext/ragel/base_lexer.rl"
801
+ goto tr58;
802
+ goto tr57;
803
+ tr57:
804
+ #line 56 "ext/ragel/base_lexer.rl"
772
805
  {
773
806
  if ( (*p) == '\n' ) lines++;
774
807
  }
775
- goto st32;
776
- st32:
808
+ goto st44;
809
+ st44:
777
810
  if ( ++p == pe )
778
- goto _test_eof32;
779
- case 32:
780
- #line 781 "ext/c/lexer.c"
811
+ goto _test_eof44;
812
+ case 44:
813
+ #line 814 "ext/c/lexer.c"
781
814
  if ( (*p) == 93 )
782
- goto tr46;
783
- goto tr44;
784
- tr45:
815
+ goto tr59;
816
+ goto tr57;
817
+ tr58:
785
818
  #line 1 "NONE"
786
819
  {te = p+1;}
787
- #line 51 "ext/ragel/base_lexer.rl"
820
+ #line 56 "ext/ragel/base_lexer.rl"
788
821
  {
789
822
  if ( (*p) == '\n' ) lines++;
790
823
  }
791
- goto st33;
792
- st33:
824
+ goto st45;
825
+ st45:
793
826
  if ( ++p == pe )
794
- goto _test_eof33;
795
- case 33:
796
- #line 797 "ext/c/lexer.c"
827
+ goto _test_eof45;
828
+ case 45:
829
+ #line 830 "ext/c/lexer.c"
797
830
  if ( (*p) == 93 )
798
831
  goto st20;
799
- goto tr46;
832
+ goto tr59;
800
833
  st20:
801
834
  if ( ++p == pe )
802
835
  goto _test_eof20;
@@ -804,8 +837,8 @@ case 20:
804
837
  if ( (*p) == 62 )
805
838
  goto tr26;
806
839
  goto tr25;
807
- tr50:
808
- #line 163 "ext/ragel/base_lexer.rl"
840
+ tr63:
841
+ #line 173 "ext/ragel/base_lexer.rl"
809
842
  {te = p;p--;{
810
843
  callback(id_on_proc_ins_body, data, encoding, ts, te);
811
844
 
@@ -816,66 +849,66 @@ tr50:
816
849
  lines = 0;
817
850
  }
818
851
  }}
819
- goto st34;
820
- tr51:
821
- ( state->cs) = 34;
822
- #line 174 "ext/ragel/base_lexer.rl"
852
+ goto st46;
853
+ tr64:
854
+ ( state->cs) = 46;
855
+ #line 184 "ext/ragel/base_lexer.rl"
823
856
  {te = p+1;{
824
857
  callback_simple(id_on_proc_ins_end);
825
858
 
826
- ( state->cs) = 22;
859
+ ( state->cs) = 34;
827
860
  }}
828
861
  goto _again;
829
- st34:
862
+ st46:
830
863
  #line 1 "NONE"
831
864
  {ts = 0;}
832
865
  if ( ++p == pe )
833
- goto _test_eof34;
834
- case 34:
866
+ goto _test_eof46;
867
+ case 46:
835
868
  #line 1 "NONE"
836
869
  {ts = p;}
837
- #line 838 "ext/c/lexer.c"
870
+ #line 871 "ext/c/lexer.c"
838
871
  if ( (*p) == 63 )
839
- goto tr49;
840
- goto tr48;
841
- tr48:
842
- #line 51 "ext/ragel/base_lexer.rl"
872
+ goto tr62;
873
+ goto tr61;
874
+ tr61:
875
+ #line 56 "ext/ragel/base_lexer.rl"
843
876
  {
844
877
  if ( (*p) == '\n' ) lines++;
845
878
  }
846
- goto st35;
847
- st35:
879
+ goto st47;
880
+ st47:
848
881
  if ( ++p == pe )
849
- goto _test_eof35;
850
- case 35:
851
- #line 852 "ext/c/lexer.c"
882
+ goto _test_eof47;
883
+ case 47:
884
+ #line 885 "ext/c/lexer.c"
852
885
  if ( (*p) == 63 )
853
- goto tr50;
854
- goto tr48;
855
- tr49:
856
- #line 51 "ext/ragel/base_lexer.rl"
886
+ goto tr63;
887
+ goto tr61;
888
+ tr62:
889
+ #line 56 "ext/ragel/base_lexer.rl"
857
890
  {
858
891
  if ( (*p) == '\n' ) lines++;
859
892
  }
860
- goto st36;
861
- st36:
893
+ goto st48;
894
+ st48:
862
895
  if ( ++p == pe )
863
- goto _test_eof36;
864
- case 36:
865
- #line 866 "ext/c/lexer.c"
896
+ goto _test_eof48;
897
+ case 48:
898
+ #line 899 "ext/c/lexer.c"
866
899
  if ( (*p) == 62 )
867
- goto tr51;
868
- goto tr50;
869
- tr53:
870
- #line 216 "ext/ragel/base_lexer.rl"
900
+ goto tr64;
901
+ goto tr63;
902
+ tr66:
903
+ #line 226 "ext/ragel/base_lexer.rl"
871
904
  {te = p+1;{
872
905
  callback_simple(id_on_string_squote);
873
906
 
874
907
  {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
875
908
  }}
876
- goto st37;
877
- tr54:
878
- #line 190 "ext/ragel/base_lexer.rl"
909
+ goto st49;
910
+ tr67:
911
+ #line 200 "ext/ragel/base_lexer.rl"
879
912
  {te = p;p--;{
880
913
  callback(id_on_string_body, data, encoding, ts, te);
881
914
 
@@ -886,43 +919,43 @@ tr54:
886
919
  lines = 0;
887
920
  }
888
921
  }}
889
- goto st37;
890
- st37:
922
+ goto st49;
923
+ st49:
891
924
  #line 1 "NONE"
892
925
  {ts = 0;}
893
926
  if ( ++p == pe )
894
- goto _test_eof37;
895
- case 37:
927
+ goto _test_eof49;
928
+ case 49:
896
929
  #line 1 "NONE"
897
930
  {ts = p;}
898
- #line 899 "ext/c/lexer.c"
931
+ #line 932 "ext/c/lexer.c"
899
932
  if ( (*p) == 39 )
900
- goto tr53;
901
- goto tr52;
902
- tr52:
903
- #line 51 "ext/ragel/base_lexer.rl"
933
+ goto tr66;
934
+ goto tr65;
935
+ tr65:
936
+ #line 56 "ext/ragel/base_lexer.rl"
904
937
  {
905
938
  if ( (*p) == '\n' ) lines++;
906
939
  }
907
- goto st38;
908
- st38:
940
+ goto st50;
941
+ st50:
909
942
  if ( ++p == pe )
910
- goto _test_eof38;
911
- case 38:
912
- #line 913 "ext/c/lexer.c"
943
+ goto _test_eof50;
944
+ case 50:
945
+ #line 946 "ext/c/lexer.c"
913
946
  if ( (*p) == 39 )
914
- goto tr54;
915
- goto tr52;
916
- tr56:
917
- #line 226 "ext/ragel/base_lexer.rl"
947
+ goto tr67;
948
+ goto tr65;
949
+ tr69:
950
+ #line 236 "ext/ragel/base_lexer.rl"
918
951
  {te = p+1;{
919
952
  callback_simple(id_on_string_dquote);
920
953
 
921
954
  {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
922
955
  }}
923
- goto st39;
924
- tr57:
925
- #line 190 "ext/ragel/base_lexer.rl"
956
+ goto st51;
957
+ tr70:
958
+ #line 200 "ext/ragel/base_lexer.rl"
926
959
  {te = p;p--;{
927
960
  callback(id_on_string_body, data, encoding, ts, te);
928
961
 
@@ -933,40 +966,40 @@ tr57:
933
966
  lines = 0;
934
967
  }
935
968
  }}
936
- goto st39;
937
- st39:
969
+ goto st51;
970
+ st51:
938
971
  #line 1 "NONE"
939
972
  {ts = 0;}
940
973
  if ( ++p == pe )
941
- goto _test_eof39;
942
- case 39:
974
+ goto _test_eof51;
975
+ case 51:
943
976
  #line 1 "NONE"
944
977
  {ts = p;}
945
- #line 946 "ext/c/lexer.c"
978
+ #line 979 "ext/c/lexer.c"
946
979
  if ( (*p) == 34 )
947
- goto tr56;
948
- goto tr55;
949
- tr55:
950
- #line 51 "ext/ragel/base_lexer.rl"
980
+ goto tr69;
981
+ goto tr68;
982
+ tr68:
983
+ #line 56 "ext/ragel/base_lexer.rl"
951
984
  {
952
985
  if ( (*p) == '\n' ) lines++;
953
986
  }
954
- goto st40;
955
- st40:
987
+ goto st52;
988
+ st52:
956
989
  if ( ++p == pe )
957
- goto _test_eof40;
958
- case 40:
959
- #line 960 "ext/c/lexer.c"
990
+ goto _test_eof52;
991
+ case 52:
992
+ #line 993 "ext/c/lexer.c"
960
993
  if ( (*p) == 34 )
961
- goto tr57;
962
- goto tr55;
963
- tr59:
964
- ( state->cs) = 41;
965
- #line 263 "ext/ragel/base_lexer.rl"
966
- {te = p+1;{ ( state->cs) = 43; }}
994
+ goto tr70;
995
+ goto tr68;
996
+ tr72:
997
+ ( state->cs) = 53;
998
+ #line 281 "ext/ragel/base_lexer.rl"
999
+ {te = p+1;{ ( state->cs) = 55; }}
967
1000
  goto _again;
968
- tr60:
969
- #line 252 "ext/ragel/base_lexer.rl"
1001
+ tr73:
1002
+ #line 270 "ext/ragel/base_lexer.rl"
970
1003
  {te = p;p--;{
971
1004
  callback(id_on_doctype_inline, data, encoding, ts, te);
972
1005
 
@@ -977,67 +1010,79 @@ tr60:
977
1010
  lines = 0;
978
1011
  }
979
1012
  }}
980
- goto st41;
981
- st41:
1013
+ goto st53;
1014
+ st53:
982
1015
  #line 1 "NONE"
983
1016
  {ts = 0;}
984
1017
  if ( ++p == pe )
985
- goto _test_eof41;
986
- case 41:
1018
+ goto _test_eof53;
1019
+ case 53:
987
1020
  #line 1 "NONE"
988
1021
  {ts = p;}
989
- #line 990 "ext/c/lexer.c"
1022
+ #line 1023 "ext/c/lexer.c"
990
1023
  if ( (*p) == 93 )
991
- goto tr59;
992
- goto tr58;
993
- tr58:
994
- #line 51 "ext/ragel/base_lexer.rl"
1024
+ goto tr72;
1025
+ goto tr71;
1026
+ tr71:
1027
+ #line 56 "ext/ragel/base_lexer.rl"
995
1028
  {
996
1029
  if ( (*p) == '\n' ) lines++;
997
1030
  }
998
- goto st42;
999
- st42:
1031
+ goto st54;
1032
+ st54:
1000
1033
  if ( ++p == pe )
1001
- goto _test_eof42;
1002
- case 42:
1003
- #line 1004 "ext/c/lexer.c"
1034
+ goto _test_eof54;
1035
+ case 54:
1036
+ #line 1037 "ext/c/lexer.c"
1004
1037
  if ( (*p) == 93 )
1005
- goto tr60;
1006
- goto tr58;
1007
- tr61:
1008
- #line 282 "ext/ragel/base_lexer.rl"
1038
+ goto tr73;
1039
+ goto tr71;
1040
+ tr74:
1041
+ #line 309 "ext/ragel/base_lexer.rl"
1009
1042
  {te = p+1;}
1010
- goto st43;
1011
- tr62:
1012
- #line 207 "ext/ragel/base_lexer.rl"
1043
+ goto st55;
1044
+ tr76:
1045
+ #line 60 "ext/ragel/base_lexer.rl"
1046
+ {te = p+1;{
1047
+ advance_line(1);
1048
+ }}
1049
+ goto st55;
1050
+ tr78:
1051
+ #line 217 "ext/ragel/base_lexer.rl"
1013
1052
  {te = p+1;{
1014
1053
  callback_simple(id_on_string_dquote);
1015
1054
 
1016
- {( state->stack)[( state->top)++] = 43; goto st39;}
1055
+ {( state->stack)[( state->top)++] = 55; goto st51;}
1017
1056
  }}
1018
- goto st43;
1019
- tr63:
1020
- #line 201 "ext/ragel/base_lexer.rl"
1057
+ goto st55;
1058
+ tr79:
1059
+ #line 211 "ext/ragel/base_lexer.rl"
1021
1060
  {te = p+1;{
1022
1061
  callback_simple(id_on_string_squote);
1023
1062
 
1024
- {( state->stack)[( state->top)++] = 43; goto st37;}
1063
+ {( state->stack)[( state->top)++] = 55; goto st49;}
1025
1064
  }}
1026
- goto st43;
1027
- tr65:
1028
- ( state->cs) = 43;
1029
- #line 288 "ext/ragel/base_lexer.rl"
1065
+ goto st55;
1066
+ tr81:
1067
+ ( state->cs) = 55;
1068
+ #line 302 "ext/ragel/base_lexer.rl"
1030
1069
  {te = p+1;{
1031
1070
  callback_simple(id_on_doctype_end);
1032
- ( state->cs) = 22;
1071
+ ( state->cs) = 34;
1033
1072
  }}
1034
1073
  goto _again;
1035
- tr68:
1036
- ( state->cs) = 43;
1037
- #line 274 "ext/ragel/base_lexer.rl"
1038
- {te = p+1;{ ( state->cs) = 41; }}
1074
+ tr84:
1075
+ ( state->cs) = 55;
1076
+ #line 292 "ext/ragel/base_lexer.rl"
1077
+ {te = p+1;{ ( state->cs) = 53; }}
1039
1078
  goto _again;
1040
- tr69:
1079
+ tr85:
1080
+ #line 60 "ext/ragel/base_lexer.rl"
1081
+ {te = p;p--;{
1082
+ advance_line(1);
1083
+ }}
1084
+ goto st55;
1085
+ tr86:
1041
1086
  #line 1 "NONE"
1042
1087
  { switch( ( state->act) ) {
1043
1088
  case 13:
@@ -1045,297 +1090,306 @@ tr69:
1045
1090
  callback(id_on_doctype_type, data, encoding, ts, te);
1046
1091
  }
1047
1092
  break;
1048
- case 18:
1093
+ case 17:
1049
1094
  {{p = ((te))-1;}
1050
1095
  callback(id_on_doctype_name, data, encoding, ts, te);
1051
1096
  }
1052
1097
  break;
1053
1098
  }
1054
1099
  }
1055
- goto st43;
1056
- tr70:
1057
- #line 284 "ext/ragel/base_lexer.rl"
1100
+ goto st55;
1101
+ tr87:
1102
+ #line 298 "ext/ragel/base_lexer.rl"
1058
1103
  {te = p;p--;{
1059
1104
  callback(id_on_doctype_name, data, encoding, ts, te);
1060
1105
  }}
1061
- goto st43;
1062
- st43:
1106
+ goto st55;
1107
+ st55:
1063
1108
  #line 1 "NONE"
1064
1109
  {ts = 0;}
1065
1110
  if ( ++p == pe )
1066
- goto _test_eof43;
1067
- case 43:
1111
+ goto _test_eof55;
1112
+ case 55:
1068
1113
  #line 1 "NONE"
1069
1114
  {ts = p;}
1070
- #line 1071 "ext/c/lexer.c"
1115
+ #line 1116 "ext/c/lexer.c"
1071
1116
  switch( (*p) ) {
1072
- case 9: goto tr61;
1073
- case 32: goto tr61;
1074
- case 34: goto tr62;
1075
- case 39: goto tr63;
1076
- case 45: goto tr64;
1077
- case 62: goto tr65;
1078
- case 80: goto st45;
1079
- case 83: goto st50;
1080
- case 91: goto tr68;
1081
- case 95: goto tr64;
1117
+ case 9: goto tr74;
1118
+ case 10: goto tr76;
1119
+ case 13: goto st56;
1120
+ case 32: goto tr74;
1121
+ case 34: goto tr78;
1122
+ case 39: goto tr79;
1123
+ case 45: goto tr80;
1124
+ case 62: goto tr81;
1125
+ case 80: goto st58;
1126
+ case 83: goto st63;
1127
+ case 91: goto tr84;
1128
+ case 95: goto tr80;
1082
1129
  }
1083
1130
  if ( (*p) < 65 ) {
1084
1131
  if ( 48 <= (*p) && (*p) <= 57 )
1085
- goto tr64;
1132
+ goto tr80;
1086
1133
  } else if ( (*p) > 90 ) {
1087
1134
  if ( 97 <= (*p) && (*p) <= 122 )
1088
- goto tr64;
1135
+ goto tr80;
1089
1136
  } else
1090
- goto tr64;
1137
+ goto tr80;
1091
1138
  goto st0;
1092
1139
  st0:
1093
1140
  ( state->cs) = 0;
1094
1141
  goto _out;
1095
- tr64:
1142
+ st56:
1143
+ if ( ++p == pe )
1144
+ goto _test_eof56;
1145
+ case 56:
1146
+ if ( (*p) == 10 )
1147
+ goto tr76;
1148
+ goto tr85;
1149
+ tr80:
1096
1150
  #line 1 "NONE"
1097
1151
  {te = p+1;}
1098
- #line 284 "ext/ragel/base_lexer.rl"
1099
- {( state->act) = 18;}
1100
- goto st44;
1101
- tr75:
1152
+ #line 298 "ext/ragel/base_lexer.rl"
1153
+ {( state->act) = 17;}
1154
+ goto st57;
1155
+ tr92:
1102
1156
  #line 1 "NONE"
1103
1157
  {te = p+1;}
1104
- #line 269 "ext/ragel/base_lexer.rl"
1158
+ #line 287 "ext/ragel/base_lexer.rl"
1105
1159
  {( state->act) = 13;}
1106
- goto st44;
1107
- st44:
1160
+ goto st57;
1161
+ st57:
1108
1162
  if ( ++p == pe )
1109
- goto _test_eof44;
1110
- case 44:
1111
- #line 1112 "ext/c/lexer.c"
1163
+ goto _test_eof57;
1164
+ case 57:
1165
+ #line 1166 "ext/c/lexer.c"
1112
1166
  switch( (*p) ) {
1113
- case 45: goto tr64;
1114
- case 95: goto tr64;
1167
+ case 45: goto tr80;
1168
+ case 95: goto tr80;
1115
1169
  }
1116
1170
  if ( (*p) < 65 ) {
1117
1171
  if ( 48 <= (*p) && (*p) <= 57 )
1118
- goto tr64;
1172
+ goto tr80;
1119
1173
  } else if ( (*p) > 90 ) {
1120
1174
  if ( 97 <= (*p) && (*p) <= 122 )
1121
- goto tr64;
1175
+ goto tr80;
1122
1176
  } else
1123
- goto tr64;
1124
- goto tr69;
1125
- st45:
1177
+ goto tr80;
1178
+ goto tr86;
1179
+ st58:
1126
1180
  if ( ++p == pe )
1127
- goto _test_eof45;
1128
- case 45:
1181
+ goto _test_eof58;
1182
+ case 58:
1129
1183
  switch( (*p) ) {
1130
- case 45: goto tr64;
1131
- case 85: goto st46;
1132
- case 95: goto tr64;
1184
+ case 45: goto tr80;
1185
+ case 85: goto st59;
1186
+ case 95: goto tr80;
1133
1187
  }
1134
1188
  if ( (*p) < 65 ) {
1135
1189
  if ( 48 <= (*p) && (*p) <= 57 )
1136
- goto tr64;
1190
+ goto tr80;
1137
1191
  } else if ( (*p) > 90 ) {
1138
1192
  if ( 97 <= (*p) && (*p) <= 122 )
1139
- goto tr64;
1193
+ goto tr80;
1140
1194
  } else
1141
- goto tr64;
1142
- goto tr70;
1143
- st46:
1195
+ goto tr80;
1196
+ goto tr87;
1197
+ st59:
1144
1198
  if ( ++p == pe )
1145
- goto _test_eof46;
1146
- case 46:
1199
+ goto _test_eof59;
1200
+ case 59:
1147
1201
  switch( (*p) ) {
1148
- case 45: goto tr64;
1149
- case 66: goto st47;
1150
- case 95: goto tr64;
1202
+ case 45: goto tr80;
1203
+ case 66: goto st60;
1204
+ case 95: goto tr80;
1151
1205
  }
1152
1206
  if ( (*p) < 65 ) {
1153
1207
  if ( 48 <= (*p) && (*p) <= 57 )
1154
- goto tr64;
1208
+ goto tr80;
1155
1209
  } else if ( (*p) > 90 ) {
1156
1210
  if ( 97 <= (*p) && (*p) <= 122 )
1157
- goto tr64;
1211
+ goto tr80;
1158
1212
  } else
1159
- goto tr64;
1160
- goto tr70;
1161
- st47:
1213
+ goto tr80;
1214
+ goto tr87;
1215
+ st60:
1162
1216
  if ( ++p == pe )
1163
- goto _test_eof47;
1164
- case 47:
1217
+ goto _test_eof60;
1218
+ case 60:
1165
1219
  switch( (*p) ) {
1166
- case 45: goto tr64;
1167
- case 76: goto st48;
1168
- case 95: goto tr64;
1220
+ case 45: goto tr80;
1221
+ case 76: goto st61;
1222
+ case 95: goto tr80;
1169
1223
  }
1170
1224
  if ( (*p) < 65 ) {
1171
1225
  if ( 48 <= (*p) && (*p) <= 57 )
1172
- goto tr64;
1226
+ goto tr80;
1173
1227
  } else if ( (*p) > 90 ) {
1174
1228
  if ( 97 <= (*p) && (*p) <= 122 )
1175
- goto tr64;
1229
+ goto tr80;
1176
1230
  } else
1177
- goto tr64;
1178
- goto tr70;
1179
- st48:
1231
+ goto tr80;
1232
+ goto tr87;
1233
+ st61:
1180
1234
  if ( ++p == pe )
1181
- goto _test_eof48;
1182
- case 48:
1235
+ goto _test_eof61;
1236
+ case 61:
1183
1237
  switch( (*p) ) {
1184
- case 45: goto tr64;
1185
- case 73: goto st49;
1186
- case 95: goto tr64;
1238
+ case 45: goto tr80;
1239
+ case 73: goto st62;
1240
+ case 95: goto tr80;
1187
1241
  }
1188
1242
  if ( (*p) < 65 ) {
1189
1243
  if ( 48 <= (*p) && (*p) <= 57 )
1190
- goto tr64;
1244
+ goto tr80;
1191
1245
  } else if ( (*p) > 90 ) {
1192
1246
  if ( 97 <= (*p) && (*p) <= 122 )
1193
- goto tr64;
1247
+ goto tr80;
1194
1248
  } else
1195
- goto tr64;
1196
- goto tr70;
1197
- st49:
1249
+ goto tr80;
1250
+ goto tr87;
1251
+ st62:
1198
1252
  if ( ++p == pe )
1199
- goto _test_eof49;
1200
- case 49:
1253
+ goto _test_eof62;
1254
+ case 62:
1201
1255
  switch( (*p) ) {
1202
- case 45: goto tr64;
1203
- case 67: goto tr75;
1204
- case 95: goto tr64;
1256
+ case 45: goto tr80;
1257
+ case 67: goto tr92;
1258
+ case 95: goto tr80;
1205
1259
  }
1206
1260
  if ( (*p) < 65 ) {
1207
1261
  if ( 48 <= (*p) && (*p) <= 57 )
1208
- goto tr64;
1262
+ goto tr80;
1209
1263
  } else if ( (*p) > 90 ) {
1210
1264
  if ( 97 <= (*p) && (*p) <= 122 )
1211
- goto tr64;
1265
+ goto tr80;
1212
1266
  } else
1213
- goto tr64;
1214
- goto tr70;
1215
- st50:
1267
+ goto tr80;
1268
+ goto tr87;
1269
+ st63:
1216
1270
  if ( ++p == pe )
1217
- goto _test_eof50;
1218
- case 50:
1271
+ goto _test_eof63;
1272
+ case 63:
1219
1273
  switch( (*p) ) {
1220
- case 45: goto tr64;
1221
- case 89: goto st51;
1222
- case 95: goto tr64;
1274
+ case 45: goto tr80;
1275
+ case 89: goto st64;
1276
+ case 95: goto tr80;
1223
1277
  }
1224
1278
  if ( (*p) < 65 ) {
1225
1279
  if ( 48 <= (*p) && (*p) <= 57 )
1226
- goto tr64;
1280
+ goto tr80;
1227
1281
  } else if ( (*p) > 90 ) {
1228
1282
  if ( 97 <= (*p) && (*p) <= 122 )
1229
- goto tr64;
1283
+ goto tr80;
1230
1284
  } else
1231
- goto tr64;
1232
- goto tr70;
1233
- st51:
1285
+ goto tr80;
1286
+ goto tr87;
1287
+ st64:
1234
1288
  if ( ++p == pe )
1235
- goto _test_eof51;
1236
- case 51:
1289
+ goto _test_eof64;
1290
+ case 64:
1237
1291
  switch( (*p) ) {
1238
- case 45: goto tr64;
1239
- case 83: goto st52;
1240
- case 95: goto tr64;
1292
+ case 45: goto tr80;
1293
+ case 83: goto st65;
1294
+ case 95: goto tr80;
1241
1295
  }
1242
1296
  if ( (*p) < 65 ) {
1243
1297
  if ( 48 <= (*p) && (*p) <= 57 )
1244
- goto tr64;
1298
+ goto tr80;
1245
1299
  } else if ( (*p) > 90 ) {
1246
1300
  if ( 97 <= (*p) && (*p) <= 122 )
1247
- goto tr64;
1301
+ goto tr80;
1248
1302
  } else
1249
- goto tr64;
1250
- goto tr70;
1251
- st52:
1303
+ goto tr80;
1304
+ goto tr87;
1305
+ st65:
1252
1306
  if ( ++p == pe )
1253
- goto _test_eof52;
1254
- case 52:
1307
+ goto _test_eof65;
1308
+ case 65:
1255
1309
  switch( (*p) ) {
1256
- case 45: goto tr64;
1257
- case 84: goto st53;
1258
- case 95: goto tr64;
1310
+ case 45: goto tr80;
1311
+ case 84: goto st66;
1312
+ case 95: goto tr80;
1259
1313
  }
1260
1314
  if ( (*p) < 65 ) {
1261
1315
  if ( 48 <= (*p) && (*p) <= 57 )
1262
- goto tr64;
1316
+ goto tr80;
1263
1317
  } else if ( (*p) > 90 ) {
1264
1318
  if ( 97 <= (*p) && (*p) <= 122 )
1265
- goto tr64;
1319
+ goto tr80;
1266
1320
  } else
1267
- goto tr64;
1268
- goto tr70;
1269
- st53:
1321
+ goto tr80;
1322
+ goto tr87;
1323
+ st66:
1270
1324
  if ( ++p == pe )
1271
- goto _test_eof53;
1272
- case 53:
1325
+ goto _test_eof66;
1326
+ case 66:
1273
1327
  switch( (*p) ) {
1274
- case 45: goto tr64;
1275
- case 69: goto st54;
1276
- case 95: goto tr64;
1328
+ case 45: goto tr80;
1329
+ case 69: goto st67;
1330
+ case 95: goto tr80;
1277
1331
  }
1278
1332
  if ( (*p) < 65 ) {
1279
1333
  if ( 48 <= (*p) && (*p) <= 57 )
1280
- goto tr64;
1334
+ goto tr80;
1281
1335
  } else if ( (*p) > 90 ) {
1282
1336
  if ( 97 <= (*p) && (*p) <= 122 )
1283
- goto tr64;
1337
+ goto tr80;
1284
1338
  } else
1285
- goto tr64;
1286
- goto tr70;
1287
- st54:
1339
+ goto tr80;
1340
+ goto tr87;
1341
+ st67:
1288
1342
  if ( ++p == pe )
1289
- goto _test_eof54;
1290
- case 54:
1343
+ goto _test_eof67;
1344
+ case 67:
1291
1345
  switch( (*p) ) {
1292
- case 45: goto tr64;
1293
- case 77: goto tr75;
1294
- case 95: goto tr64;
1346
+ case 45: goto tr80;
1347
+ case 77: goto tr92;
1348
+ case 95: goto tr80;
1295
1349
  }
1296
1350
  if ( (*p) < 65 ) {
1297
1351
  if ( 48 <= (*p) && (*p) <= 57 )
1298
- goto tr64;
1352
+ goto tr80;
1299
1353
  } else if ( (*p) > 90 ) {
1300
1354
  if ( 97 <= (*p) && (*p) <= 122 )
1301
- goto tr64;
1355
+ goto tr80;
1302
1356
  } else
1303
- goto tr64;
1304
- goto tr70;
1305
- tr80:
1306
- #line 51 "ext/ragel/base_lexer.rl"
1357
+ goto tr80;
1358
+ goto tr87;
1359
+ tr97:
1360
+ #line 56 "ext/ragel/base_lexer.rl"
1307
1361
  {
1308
1362
  if ( (*p) == '\n' ) lines++;
1309
1363
  }
1310
- #line 336 "ext/ragel/base_lexer.rl"
1364
+ #line 354 "ext/ragel/base_lexer.rl"
1311
1365
  {te = p+1;}
1312
- goto st55;
1313
- tr81:
1314
- #line 207 "ext/ragel/base_lexer.rl"
1366
+ goto st68;
1367
+ tr98:
1368
+ #line 217 "ext/ragel/base_lexer.rl"
1315
1369
  {te = p+1;{
1316
1370
  callback_simple(id_on_string_dquote);
1317
1371
 
1318
- {( state->stack)[( state->top)++] = 55; goto st39;}
1372
+ {( state->stack)[( state->top)++] = 68; goto st51;}
1319
1373
  }}
1320
- #line 51 "ext/ragel/base_lexer.rl"
1374
+ #line 56 "ext/ragel/base_lexer.rl"
1321
1375
  {
1322
1376
  if ( (*p) == '\n' ) lines++;
1323
1377
  }
1324
- goto st55;
1325
- tr82:
1326
- #line 201 "ext/ragel/base_lexer.rl"
1378
+ goto st68;
1379
+ tr99:
1380
+ #line 211 "ext/ragel/base_lexer.rl"
1327
1381
  {te = p+1;{
1328
1382
  callback_simple(id_on_string_squote);
1329
1383
 
1330
- {( state->stack)[( state->top)++] = 55; goto st37;}
1384
+ {( state->stack)[( state->top)++] = 68; goto st49;}
1331
1385
  }}
1332
- #line 51 "ext/ragel/base_lexer.rl"
1386
+ #line 56 "ext/ragel/base_lexer.rl"
1333
1387
  {
1334
1388
  if ( (*p) == '\n' ) lines++;
1335
1389
  }
1336
- goto st55;
1337
- tr85:
1338
- #line 322 "ext/ragel/base_lexer.rl"
1390
+ goto st68;
1391
+ tr102:
1392
+ #line 340 "ext/ragel/base_lexer.rl"
1339
1393
  {te = p;p--;{
1340
1394
  if ( lines > 0 )
1341
1395
  {
@@ -1346,14 +1400,14 @@ tr85:
1346
1400
 
1347
1401
  callback(id_on_attribute, data, encoding, ts, te);
1348
1402
  }}
1349
- goto st55;
1350
- tr87:
1351
- #line 336 "ext/ragel/base_lexer.rl"
1403
+ goto st68;
1404
+ tr104:
1405
+ #line 354 "ext/ragel/base_lexer.rl"
1352
1406
  {te = p;p--;}
1353
- goto st55;
1354
- tr88:
1355
- ( state->cs) = 55;
1356
- #line 308 "ext/ragel/base_lexer.rl"
1407
+ goto st68;
1408
+ tr105:
1409
+ ( state->cs) = 68;
1410
+ #line 326 "ext/ragel/base_lexer.rl"
1357
1411
  {te = p+1;{
1358
1412
  if ( lines > 0 )
1359
1413
  {
@@ -1364,144 +1418,143 @@ tr88:
1364
1418
 
1365
1419
  callback_simple(id_on_xml_decl_end);
1366
1420
 
1367
- ( state->cs) = 22;
1421
+ ( state->cs) = 34;
1368
1422
  }}
1369
1423
  goto _again;
1370
- st55:
1424
+ st68:
1371
1425
  #line 1 "NONE"
1372
1426
  {ts = 0;}
1373
1427
  if ( ++p == pe )
1374
- goto _test_eof55;
1375
- case 55:
1428
+ goto _test_eof68;
1429
+ case 68:
1376
1430
  #line 1 "NONE"
1377
1431
  {ts = p;}
1378
- #line 1379 "ext/c/lexer.c"
1432
+ #line 1433 "ext/c/lexer.c"
1379
1433
  switch( (*p) ) {
1380
- case 34: goto tr81;
1381
- case 39: goto tr82;
1382
- case 45: goto tr83;
1383
- case 63: goto tr84;
1384
- case 95: goto tr83;
1434
+ case 34: goto tr98;
1435
+ case 39: goto tr99;
1436
+ case 45: goto tr100;
1437
+ case 63: goto tr101;
1438
+ case 95: goto tr100;
1385
1439
  }
1386
1440
  if ( (*p) < 65 ) {
1387
1441
  if ( 48 <= (*p) && (*p) <= 57 )
1388
- goto tr83;
1442
+ goto tr100;
1389
1443
  } else if ( (*p) > 90 ) {
1390
1444
  if ( 97 <= (*p) && (*p) <= 122 )
1391
- goto tr83;
1445
+ goto tr100;
1392
1446
  } else
1393
- goto tr83;
1394
- goto tr80;
1395
- tr83:
1396
- #line 51 "ext/ragel/base_lexer.rl"
1447
+ goto tr100;
1448
+ goto tr97;
1449
+ tr100:
1450
+ #line 56 "ext/ragel/base_lexer.rl"
1397
1451
  {
1398
1452
  if ( (*p) == '\n' ) lines++;
1399
1453
  }
1400
- goto st56;
1401
- st56:
1454
+ goto st69;
1455
+ st69:
1402
1456
  if ( ++p == pe )
1403
- goto _test_eof56;
1404
- case 56:
1405
- #line 1406 "ext/c/lexer.c"
1457
+ goto _test_eof69;
1458
+ case 69:
1459
+ #line 1460 "ext/c/lexer.c"
1406
1460
  switch( (*p) ) {
1407
- case 45: goto st56;
1408
- case 95: goto st56;
1461
+ case 45: goto st69;
1462
+ case 95: goto st69;
1409
1463
  }
1410
1464
  if ( (*p) < 65 ) {
1411
1465
  if ( 48 <= (*p) && (*p) <= 57 )
1412
- goto st56;
1466
+ goto st69;
1413
1467
  } else if ( (*p) > 90 ) {
1414
1468
  if ( 97 <= (*p) && (*p) <= 122 )
1415
- goto st56;
1469
+ goto st69;
1416
1470
  } else
1417
- goto st56;
1418
- goto tr85;
1419
- tr84:
1420
- #line 51 "ext/ragel/base_lexer.rl"
1471
+ goto st69;
1472
+ goto tr102;
1473
+ tr101:
1474
+ #line 56 "ext/ragel/base_lexer.rl"
1421
1475
  {
1422
1476
  if ( (*p) == '\n' ) lines++;
1423
1477
  }
1424
- goto st57;
1425
- st57:
1478
+ goto st70;
1479
+ st70:
1426
1480
  if ( ++p == pe )
1427
- goto _test_eof57;
1428
- case 57:
1429
- #line 1430 "ext/c/lexer.c"
1481
+ goto _test_eof70;
1482
+ case 70:
1483
+ #line 1484 "ext/c/lexer.c"
1430
1484
  if ( (*p) == 62 )
1431
- goto tr88;
1432
- goto tr87;
1433
- tr90:
1434
- ( state->cs) = 58;
1435
- #line 367 "ext/ragel/base_lexer.rl"
1485
+ goto tr105;
1486
+ goto tr104;
1487
+ tr107:
1488
+ ( state->cs) = 71;
1489
+ #line 391 "ext/ragel/base_lexer.rl"
1436
1490
  {te = p;p--;{
1437
1491
  callback(id_on_element_name, data, encoding, ts, te);
1438
- ( state->cs) = 63;
1492
+ ( state->cs) = 76;
1439
1493
  }}
1440
1494
  goto _again;
1441
- tr91:
1442
- #line 363 "ext/ragel/base_lexer.rl"
1495
+ tr108:
1496
+ #line 387 "ext/ragel/base_lexer.rl"
1443
1497
  {te = p+1;{
1444
1498
  callback(id_on_element_ns, data, encoding, ts, te - 1);
1445
1499
  }}
1446
- goto st58;
1447
- st58:
1500
+ goto st71;
1501
+ st71:
1448
1502
  #line 1 "NONE"
1449
1503
  {ts = 0;}
1450
1504
  if ( ++p == pe )
1451
- goto _test_eof58;
1452
- case 58:
1505
+ goto _test_eof71;
1506
+ case 71:
1453
1507
  #line 1 "NONE"
1454
1508
  {ts = p;}
1455
- #line 1456 "ext/c/lexer.c"
1509
+ #line 1510 "ext/c/lexer.c"
1456
1510
  switch( (*p) ) {
1457
- case 45: goto st59;
1458
- case 95: goto st59;
1511
+ case 45: goto st72;
1512
+ case 95: goto st72;
1459
1513
  }
1460
1514
  if ( (*p) < 65 ) {
1461
1515
  if ( 48 <= (*p) && (*p) <= 57 )
1462
- goto st59;
1516
+ goto st72;
1463
1517
  } else if ( (*p) > 90 ) {
1464
1518
  if ( 97 <= (*p) && (*p) <= 122 )
1465
- goto st59;
1519
+ goto st72;
1466
1520
  } else
1467
- goto st59;
1521
+ goto st72;
1468
1522
  goto st0;
1469
- st59:
1523
+ st72:
1470
1524
  if ( ++p == pe )
1471
- goto _test_eof59;
1472
- case 59:
1525
+ goto _test_eof72;
1526
+ case 72:
1473
1527
  switch( (*p) ) {
1474
- case 45: goto st59;
1475
- case 58: goto tr91;
1476
- case 95: goto st59;
1528
+ case 45: goto st72;
1529
+ case 58: goto tr108;
1530
+ case 95: goto st72;
1477
1531
  }
1478
1532
  if ( (*p) < 65 ) {
1479
1533
  if ( 48 <= (*p) && (*p) <= 57 )
1480
- goto st59;
1534
+ goto st72;
1481
1535
  } else if ( (*p) > 90 ) {
1482
1536
  if ( 97 <= (*p) && (*p) <= 122 )
1483
- goto st59;
1537
+ goto st72;
1484
1538
  } else
1485
- goto st59;
1486
- goto tr90;
1487
- tr93:
1488
- ( state->cs) = 60;
1489
- #line 373 "ext/ragel/base_lexer.rl"
1539
+ goto st72;
1540
+ goto tr107;
1541
+ tr110:
1542
+ #line 64 "ext/ragel/base_lexer.rl"
1490
1543
  {te = p+1;{
1491
1544
  p--;
1492
- ( state->cs) = 63;
1545
+ {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
1493
1546
  }}
1494
- goto _again;
1495
- tr94:
1496
- ( state->cs) = 60;
1497
- #line 387 "ext/ragel/base_lexer.rl"
1547
+ goto st73;
1548
+ tr111:
1549
+ ( state->cs) = 73;
1550
+ #line 406 "ext/ragel/base_lexer.rl"
1498
1551
  {te = p+1;{
1499
1552
  p--;
1500
- ( state->cs) = 62;
1553
+ ( state->cs) = 75;
1501
1554
  }}
1502
1555
  goto _again;
1503
- tr95:
1504
- #line 394 "ext/ragel/base_lexer.rl"
1556
+ tr112:
1557
+ #line 413 "ext/ragel/base_lexer.rl"
1505
1558
  {te = p;p--;{
1506
1559
  callback_simple(id_on_string_squote);
1507
1560
 
@@ -1509,214 +1562,220 @@ tr95:
1509
1562
 
1510
1563
  callback_simple(id_on_string_squote);
1511
1564
  }}
1512
- goto st60;
1513
- st60:
1565
+ goto st73;
1566
+ st73:
1514
1567
  #line 1 "NONE"
1515
1568
  {ts = 0;}
1516
1569
  if ( ++p == pe )
1517
- goto _test_eof60;
1518
- case 60:
1570
+ goto _test_eof73;
1571
+ case 73:
1519
1572
  #line 1 "NONE"
1520
1573
  {ts = p;}
1521
- #line 1522 "ext/c/lexer.c"
1574
+ #line 1575 "ext/c/lexer.c"
1522
1575
  switch( (*p) ) {
1523
- case 13: goto tr93;
1524
- case 32: goto tr93;
1525
- case 34: goto tr94;
1526
- case 39: goto tr94;
1527
- case 96: goto tr93;
1576
+ case 13: goto tr110;
1577
+ case 32: goto tr110;
1578
+ case 34: goto tr111;
1579
+ case 39: goto tr111;
1580
+ case 96: goto tr110;
1528
1581
  }
1529
1582
  if ( (*p) > 10 ) {
1530
1583
  if ( 60 <= (*p) && (*p) <= 62 )
1531
- goto tr93;
1584
+ goto tr110;
1532
1585
  } else if ( (*p) >= 9 )
1533
- goto tr93;
1534
- goto st61;
1535
- st61:
1586
+ goto tr110;
1587
+ goto st74;
1588
+ st74:
1536
1589
  if ( ++p == pe )
1537
- goto _test_eof61;
1538
- case 61:
1590
+ goto _test_eof74;
1591
+ case 74:
1539
1592
  switch( (*p) ) {
1540
- case 13: goto tr95;
1541
- case 32: goto tr95;
1542
- case 34: goto tr95;
1543
- case 39: goto tr95;
1544
- case 96: goto tr95;
1593
+ case 13: goto tr112;
1594
+ case 32: goto tr112;
1595
+ case 34: goto tr112;
1596
+ case 39: goto tr112;
1597
+ case 96: goto tr112;
1545
1598
  }
1546
1599
  if ( (*p) > 10 ) {
1547
1600
  if ( 60 <= (*p) && (*p) <= 62 )
1548
- goto tr95;
1601
+ goto tr112;
1549
1602
  } else if ( (*p) >= 9 )
1550
- goto tr95;
1551
- goto st61;
1552
- tr96:
1553
- ( state->cs) = 62;
1554
- #line 373 "ext/ragel/base_lexer.rl"
1603
+ goto tr112;
1604
+ goto st74;
1605
+ tr113:
1606
+ #line 64 "ext/ragel/base_lexer.rl"
1555
1607
  {te = p+1;{
1556
1608
  p--;
1557
- ( state->cs) = 63;
1609
+ {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
1558
1610
  }}
1559
- goto _again;
1560
- tr97:
1561
- #line 207 "ext/ragel/base_lexer.rl"
1611
+ goto st75;
1612
+ tr114:
1613
+ ( state->cs) = 75;
1614
+ #line 435 "ext/ragel/base_lexer.rl"
1562
1615
  {te = p+1;{
1563
- callback_simple(id_on_string_dquote);
1616
+ callback_simple(id_on_string_dquote);
1564
1617
 
1565
- {( state->stack)[( state->top)++] = 62; goto st39;}
1566
- }}
1567
- goto st62;
1568
- tr98:
1569
- #line 201 "ext/ragel/base_lexer.rl"
1618
+ ( state->cs) = 51;
1619
+ }}
1620
+ goto _again;
1621
+ tr115:
1622
+ ( state->cs) = 75;
1623
+ #line 429 "ext/ragel/base_lexer.rl"
1570
1624
  {te = p+1;{
1571
- callback_simple(id_on_string_squote);
1625
+ callback_simple(id_on_string_squote);
1572
1626
 
1573
- {( state->stack)[( state->top)++] = 62; goto st37;}
1574
- }}
1575
- goto st62;
1576
- st62:
1627
+ ( state->cs) = 49;
1628
+ }}
1629
+ goto _again;
1630
+ st75:
1577
1631
  #line 1 "NONE"
1578
1632
  {ts = 0;}
1579
1633
  if ( ++p == pe )
1580
- goto _test_eof62;
1581
- case 62:
1634
+ goto _test_eof75;
1635
+ case 75:
1582
1636
  #line 1 "NONE"
1583
1637
  {ts = p;}
1584
- #line 1585 "ext/c/lexer.c"
1638
+ #line 1639 "ext/c/lexer.c"
1585
1639
  switch( (*p) ) {
1586
- case 34: goto tr97;
1587
- case 39: goto tr98;
1640
+ case 34: goto tr114;
1641
+ case 39: goto tr115;
1588
1642
  }
1589
- goto tr96;
1590
- tr27:
1591
- ( state->cs) = 63;
1592
- #line 457 "ext/ragel/base_lexer.rl"
1593
- {te = p+1;{
1594
- callback_simple(id_on_element_end);
1595
- ( state->cs) = 22;
1596
- }}
1597
- goto _again;
1598
- tr99:
1599
- #line 415 "ext/ragel/base_lexer.rl"
1643
+ goto tr113;
1644
+ tr116:
1645
+ #line 494 "ext/ragel/base_lexer.rl"
1600
1646
  {te = p+1;}
1601
- goto st63;
1602
- tr100:
1603
- #line 417 "ext/ragel/base_lexer.rl"
1647
+ goto st76;
1648
+ tr117:
1649
+ #line 60 "ext/ragel/base_lexer.rl"
1604
1650
  {te = p+1;{
1605
- callback_simple(id_advance_line);
1606
- }}
1607
- goto st63;
1608
- tr104:
1609
- ( state->cs) = 63;
1610
- #line 431 "ext/ragel/base_lexer.rl"
1651
+ advance_line(1);
1652
+ }}
1653
+ goto st76;
1654
+ tr121:
1655
+ #line 459 "ext/ragel/base_lexer.rl"
1611
1656
  {te = p+1;{
1612
1657
  if ( html_p )
1613
1658
  {
1614
- ( state->cs) = 60;
1659
+ {( state->stack)[( state->top)++] = 76; goto st73;}
1615
1660
  }
1616
1661
  else
1617
1662
  {
1618
- ( state->cs) = 62;
1663
+ {( state->stack)[( state->top)++] = 76; goto st75;}
1619
1664
  }
1620
1665
  }}
1621
- goto _again;
1622
- tr105:
1623
- ( state->cs) = 63;
1624
- #line 443 "ext/ragel/base_lexer.rl"
1666
+ goto st76;
1667
+ tr122:
1668
+ ( state->cs) = 76;
1669
+ #line 471 "ext/ragel/base_lexer.rl"
1625
1670
  {te = p+1;{
1626
1671
  callback_simple(id_on_element_open_end);
1627
1672
 
1628
- if ( literal_html_element_p() )
1673
+ if ( html_script_p() )
1674
+ {
1675
+ ( state->cs) = 84;
1676
+ }
1677
+ else if ( html_style_p() )
1629
1678
  {
1630
- ( state->cs) = 70;
1679
+ ( state->cs) = 88;
1631
1680
  }
1632
1681
  else
1633
1682
  {
1634
- ( state->cs) = 22;
1683
+ ( state->cs) = 34;
1635
1684
  }
1636
1685
  }}
1637
1686
  goto _again;
1638
- tr106:
1639
- #line 417 "ext/ragel/base_lexer.rl"
1687
+ tr123:
1688
+ #line 60 "ext/ragel/base_lexer.rl"
1640
1689
  {te = p;p--;{
1641
- callback_simple(id_advance_line);
1642
- }}
1643
- goto st63;
1644
- tr107:
1645
- #line 426 "ext/ragel/base_lexer.rl"
1690
+ advance_line(1);
1691
+ }}
1692
+ goto st76;
1693
+ tr124:
1694
+ #line 454 "ext/ragel/base_lexer.rl"
1646
1695
  {te = p;p--;{
1647
1696
  callback(id_on_attribute, data, encoding, ts, te);
1648
1697
  }}
1649
- goto st63;
1650
- tr108:
1651
- #line 422 "ext/ragel/base_lexer.rl"
1698
+ goto st76;
1699
+ tr125:
1700
+ #line 450 "ext/ragel/base_lexer.rl"
1652
1701
  {te = p+1;{
1653
1702
  callback(id_on_attribute_ns, data, encoding, ts, te - 1);
1654
1703
  }}
1655
- goto st63;
1656
- st63:
1704
+ goto st76;
1705
+ tr126:
1706
+ #line 494 "ext/ragel/base_lexer.rl"
1707
+ {te = p;p--;}
1708
+ goto st76;
1709
+ tr127:
1710
+ ( state->cs) = 76;
1711
+ #line 489 "ext/ragel/base_lexer.rl"
1712
+ {te = p+1;{
1713
+ callback_simple(id_on_element_end);
1714
+ ( state->cs) = 34;
1715
+ }}
1716
+ goto _again;
1717
+ st76:
1657
1718
  #line 1 "NONE"
1658
1719
  {ts = 0;}
1659
1720
  if ( ++p == pe )
1660
- goto _test_eof63;
1661
- case 63:
1721
+ goto _test_eof76;
1722
+ case 76:
1662
1723
  #line 1 "NONE"
1663
1724
  {ts = p;}
1664
- #line 1665 "ext/c/lexer.c"
1725
+ #line 1726 "ext/c/lexer.c"
1665
1726
  switch( (*p) ) {
1666
- case 9: goto tr99;
1667
- case 10: goto tr100;
1668
- case 13: goto st64;
1669
- case 32: goto tr99;
1670
- case 45: goto st65;
1671
- case 47: goto st21;
1672
- case 61: goto tr104;
1673
- case 62: goto tr105;
1674
- case 95: goto st65;
1727
+ case 10: goto tr117;
1728
+ case 13: goto st77;
1729
+ case 45: goto st78;
1730
+ case 47: goto st79;
1731
+ case 61: goto tr121;
1732
+ case 62: goto tr122;
1733
+ case 95: goto st78;
1675
1734
  }
1676
1735
  if ( (*p) < 65 ) {
1677
1736
  if ( 48 <= (*p) && (*p) <= 57 )
1678
- goto st65;
1737
+ goto st78;
1679
1738
  } else if ( (*p) > 90 ) {
1680
1739
  if ( 97 <= (*p) && (*p) <= 122 )
1681
- goto st65;
1740
+ goto st78;
1682
1741
  } else
1683
- goto st65;
1684
- goto st0;
1685
- st64:
1742
+ goto st78;
1743
+ goto tr116;
1744
+ st77:
1686
1745
  if ( ++p == pe )
1687
- goto _test_eof64;
1688
- case 64:
1746
+ goto _test_eof77;
1747
+ case 77:
1689
1748
  if ( (*p) == 10 )
1690
- goto tr100;
1691
- goto tr106;
1692
- st65:
1749
+ goto tr117;
1750
+ goto tr123;
1751
+ st78:
1693
1752
  if ( ++p == pe )
1694
- goto _test_eof65;
1695
- case 65:
1753
+ goto _test_eof78;
1754
+ case 78:
1696
1755
  switch( (*p) ) {
1697
- case 45: goto st65;
1698
- case 58: goto tr108;
1699
- case 95: goto st65;
1756
+ case 45: goto st78;
1757
+ case 58: goto tr125;
1758
+ case 95: goto st78;
1700
1759
  }
1701
1760
  if ( (*p) < 65 ) {
1702
1761
  if ( 48 <= (*p) && (*p) <= 57 )
1703
- goto st65;
1762
+ goto st78;
1704
1763
  } else if ( (*p) > 90 ) {
1705
1764
  if ( 97 <= (*p) && (*p) <= 122 )
1706
- goto st65;
1765
+ goto st78;
1707
1766
  } else
1708
- goto st65;
1709
- goto tr107;
1710
- st21:
1767
+ goto st78;
1768
+ goto tr124;
1769
+ st79:
1711
1770
  if ( ++p == pe )
1712
- goto _test_eof21;
1713
- case 21:
1771
+ goto _test_eof79;
1772
+ case 79:
1714
1773
  if ( (*p) == 62 )
1715
- goto tr27;
1716
- goto st0;
1717
- tr111:
1718
- ( state->cs) = 66;
1719
- #line 486 "ext/ragel/base_lexer.rl"
1774
+ goto tr127;
1775
+ goto tr126;
1776
+ tr130:
1777
+ ( state->cs) = 80;
1778
+ #line 531 "ext/ragel/base_lexer.rl"
1720
1779
  {te = p;p--;{
1721
1780
  callback(id_on_text, data, encoding, ts, te);
1722
1781
 
@@ -1727,12 +1786,12 @@ tr111:
1727
1786
  lines = 0;
1728
1787
  }
1729
1788
 
1730
- ( state->cs) = 22;
1789
+ ( state->cs) = 34;
1731
1790
  }}
1732
1791
  goto _again;
1733
- tr113:
1734
- ( state->cs) = 66;
1735
- #line 500 "ext/ragel/base_lexer.rl"
1792
+ tr132:
1793
+ ( state->cs) = 80;
1794
+ #line 545 "ext/ragel/base_lexer.rl"
1736
1795
  {te = p+1;{
1737
1796
  callback(id_on_text, data, encoding, ts, mark);
1738
1797
 
@@ -1746,12 +1805,12 @@ tr113:
1746
1805
  lines = 0;
1747
1806
  }
1748
1807
 
1749
- ( state->cs) = 22;
1808
+ ( state->cs) = 34;
1750
1809
  }}
1751
1810
  goto _again;
1752
- tr114:
1753
- ( state->cs) = 66;
1754
- #line 486 "ext/ragel/base_lexer.rl"
1811
+ tr133:
1812
+ ( state->cs) = 80;
1813
+ #line 531 "ext/ragel/base_lexer.rl"
1755
1814
  {te = p+1;{
1756
1815
  callback(id_on_text, data, encoding, ts, te);
1757
1816
 
@@ -1762,360 +1821,373 @@ tr114:
1762
1821
  lines = 0;
1763
1822
  }
1764
1823
 
1765
- ( state->cs) = 22;
1824
+ ( state->cs) = 34;
1766
1825
  }}
1767
1826
  goto _again;
1768
- st66:
1827
+ st80:
1769
1828
  #line 1 "NONE"
1770
1829
  {ts = 0;}
1771
1830
  if ( ++p == pe )
1772
- goto _test_eof66;
1773
- case 66:
1831
+ goto _test_eof80;
1832
+ case 80:
1774
1833
  #line 1 "NONE"
1775
1834
  {ts = p;}
1776
- #line 1777 "ext/c/lexer.c"
1835
+ #line 1836 "ext/c/lexer.c"
1777
1836
  if ( (*p) == 60 )
1778
- goto tr110;
1779
- goto tr109;
1780
- tr109:
1781
- #line 51 "ext/ragel/base_lexer.rl"
1837
+ goto tr129;
1838
+ goto tr128;
1839
+ tr128:
1840
+ #line 56 "ext/ragel/base_lexer.rl"
1782
1841
  {
1783
1842
  if ( (*p) == '\n' ) lines++;
1784
1843
  }
1785
- goto st67;
1786
- st67:
1844
+ goto st81;
1845
+ st81:
1787
1846
  if ( ++p == pe )
1788
- goto _test_eof67;
1789
- case 67:
1790
- #line 1791 "ext/c/lexer.c"
1847
+ goto _test_eof81;
1848
+ case 81:
1849
+ #line 1850 "ext/c/lexer.c"
1791
1850
  if ( (*p) == 60 )
1792
- goto tr112;
1793
- goto tr109;
1794
- tr112:
1795
- #line 51 "ext/ragel/base_lexer.rl"
1851
+ goto tr131;
1852
+ goto tr128;
1853
+ tr131:
1854
+ #line 56 "ext/ragel/base_lexer.rl"
1796
1855
  {
1797
1856
  if ( (*p) == '\n' ) lines++;
1798
1857
  }
1799
- #line 500 "ext/ragel/base_lexer.rl"
1858
+ #line 545 "ext/ragel/base_lexer.rl"
1800
1859
  { mark = p; }
1801
- goto st68;
1802
- st68:
1860
+ goto st82;
1861
+ st82:
1803
1862
  if ( ++p == pe )
1804
- goto _test_eof68;
1805
- case 68:
1806
- #line 1807 "ext/c/lexer.c"
1863
+ goto _test_eof82;
1864
+ case 82:
1865
+ #line 1866 "ext/c/lexer.c"
1807
1866
  switch( (*p) ) {
1808
- case 33: goto tr113;
1809
- case 45: goto tr113;
1810
- case 60: goto tr112;
1811
- case 63: goto tr113;
1812
- case 95: goto tr113;
1867
+ case 33: goto tr132;
1868
+ case 45: goto tr132;
1869
+ case 60: goto tr131;
1870
+ case 63: goto tr132;
1871
+ case 95: goto tr132;
1813
1872
  }
1814
1873
  if ( (*p) < 65 ) {
1815
1874
  if ( 47 <= (*p) && (*p) <= 57 )
1816
- goto tr113;
1875
+ goto tr132;
1817
1876
  } else if ( (*p) > 90 ) {
1818
1877
  if ( 97 <= (*p) && (*p) <= 122 )
1819
- goto tr113;
1878
+ goto tr132;
1820
1879
  } else
1821
- goto tr113;
1822
- goto tr109;
1823
- tr110:
1824
- #line 51 "ext/ragel/base_lexer.rl"
1880
+ goto tr132;
1881
+ goto tr128;
1882
+ tr129:
1883
+ #line 56 "ext/ragel/base_lexer.rl"
1825
1884
  {
1826
1885
  if ( (*p) == '\n' ) lines++;
1827
1886
  }
1828
- #line 500 "ext/ragel/base_lexer.rl"
1887
+ #line 545 "ext/ragel/base_lexer.rl"
1829
1888
  { mark = p; }
1830
- goto st69;
1831
- st69:
1889
+ goto st83;
1890
+ st83:
1832
1891
  if ( ++p == pe )
1833
- goto _test_eof69;
1834
- case 69:
1835
- #line 1836 "ext/c/lexer.c"
1892
+ goto _test_eof83;
1893
+ case 83:
1894
+ #line 1895 "ext/c/lexer.c"
1836
1895
  switch( (*p) ) {
1837
- case 33: goto tr114;
1838
- case 45: goto tr114;
1839
- case 60: goto tr112;
1840
- case 63: goto tr114;
1841
- case 95: goto tr114;
1896
+ case 33: goto tr133;
1897
+ case 45: goto tr133;
1898
+ case 60: goto tr131;
1899
+ case 63: goto tr133;
1900
+ case 95: goto tr133;
1842
1901
  }
1843
1902
  if ( (*p) < 65 ) {
1844
1903
  if ( 47 <= (*p) && (*p) <= 57 )
1845
- goto tr114;
1904
+ goto tr133;
1846
1905
  } else if ( (*p) > 90 ) {
1847
1906
  if ( 97 <= (*p) && (*p) <= 122 )
1848
- goto tr114;
1907
+ goto tr133;
1849
1908
  } else
1850
- goto tr114;
1851
- goto tr109;
1852
- tr117:
1853
- #line 1 "NONE"
1854
- { switch( ( state->act) ) {
1855
- case 0:
1856
- {{goto st0;}}
1857
- break;
1858
- case 42:
1859
- {{p = ((te))-1;}
1860
- callback(id_on_text, data, encoding, ts, te);
1909
+ goto tr133;
1910
+ goto tr128;
1911
+ tr27:
1912
+ #line 519 "ext/ragel/base_lexer.rl"
1913
+ {{p = ((te))-1;}{
1914
+ callback(id_on_text, data, encoding, ts, te);
1861
1915
 
1862
- if ( lines > 0 )
1863
- {
1864
- advance_line(lines);
1916
+ if ( lines > 0 )
1917
+ {
1918
+ advance_line(lines);
1865
1919
 
1866
- lines = 0;
1867
- }
1920
+ lines = 0;
1868
1921
  }
1869
- break;
1870
- }
1871
- }
1872
- goto st70;
1873
- tr118:
1874
- #line 524 "ext/ragel/base_lexer.rl"
1875
- {te = p;p--;{
1876
- callback(id_on_text, data, encoding, ts, te);
1877
-
1878
- if ( lines > 0 )
1879
- {
1880
- advance_line(lines);
1881
-
1882
- lines = 0;
1883
- }
1884
- }}
1885
- goto st70;
1886
- tr127:
1887
- ( state->cs) = 70;
1888
- #line 535 "ext/ragel/base_lexer.rl"
1922
+ }}
1923
+ goto st84;
1924
+ tr34:
1925
+ ( state->cs) = 84;
1926
+ #line 379 "ext/ragel/base_lexer.rl"
1889
1927
  {te = p+1;{
1890
- callback(id_on_text, data, encoding, ts, mark);
1891
-
1892
- p = mark - 1;
1893
- mark = 0;
1928
+ callback_simple(id_on_element_end);
1894
1929
 
1895
- if ( lines > 0 )
1896
- {
1897
- advance_line(lines);
1930
+ ( state->cs) = 34;
1931
+ }}
1932
+ goto _again;
1933
+ tr136:
1934
+ #line 519 "ext/ragel/base_lexer.rl"
1935
+ {te = p;p--;{
1936
+ callback(id_on_text, data, encoding, ts, te);
1898
1937
 
1899
- lines = 0;
1900
- }
1938
+ if ( lines > 0 )
1939
+ {
1940
+ advance_line(lines);
1901
1941
 
1902
- ( state->cs) = 22;
1903
- }}
1904
- goto _again;
1905
- st70:
1942
+ lines = 0;
1943
+ }
1944
+ }}
1945
+ goto st84;
1946
+ st84:
1906
1947
  #line 1 "NONE"
1907
1948
  {ts = 0;}
1908
- #line 1 "NONE"
1909
- {( state->act) = 0;}
1910
1949
  if ( ++p == pe )
1911
- goto _test_eof70;
1912
- case 70:
1950
+ goto _test_eof84;
1951
+ case 84:
1913
1952
  #line 1 "NONE"
1914
1953
  {ts = p;}
1915
- #line 1916 "ext/c/lexer.c"
1954
+ #line 1955 "ext/c/lexer.c"
1916
1955
  if ( (*p) == 60 )
1917
- goto tr116;
1918
- goto tr115;
1919
- tr115:
1920
- #line 1 "NONE"
1921
- {te = p+1;}
1922
- #line 51 "ext/ragel/base_lexer.rl"
1956
+ goto tr135;
1957
+ goto tr134;
1958
+ tr134:
1959
+ #line 56 "ext/ragel/base_lexer.rl"
1923
1960
  {
1924
1961
  if ( (*p) == '\n' ) lines++;
1925
1962
  }
1926
- #line 524 "ext/ragel/base_lexer.rl"
1927
- {( state->act) = 42;}
1928
- goto st71;
1929
- st71:
1963
+ goto st85;
1964
+ st85:
1930
1965
  if ( ++p == pe )
1931
- goto _test_eof71;
1932
- case 71:
1933
- #line 1934 "ext/c/lexer.c"
1966
+ goto _test_eof85;
1967
+ case 85:
1968
+ #line 1969 "ext/c/lexer.c"
1934
1969
  if ( (*p) == 60 )
1935
- goto tr116;
1936
- goto tr115;
1937
- tr116:
1938
- #line 51 "ext/ragel/base_lexer.rl"
1970
+ goto tr136;
1971
+ goto tr134;
1972
+ tr135:
1973
+ #line 1 "NONE"
1974
+ {te = p+1;}
1975
+ #line 56 "ext/ragel/base_lexer.rl"
1939
1976
  {
1940
1977
  if ( (*p) == '\n' ) lines++;
1941
1978
  }
1942
- #line 535 "ext/ragel/base_lexer.rl"
1943
- { mark = p; }
1944
- goto st72;
1945
- st72:
1979
+ goto st86;
1980
+ st86:
1946
1981
  if ( ++p == pe )
1947
- goto _test_eof72;
1948
- case 72:
1949
- #line 1950 "ext/c/lexer.c"
1982
+ goto _test_eof86;
1983
+ case 86:
1984
+ #line 1985 "ext/c/lexer.c"
1950
1985
  switch( (*p) ) {
1951
- case 47: goto tr119;
1952
- case 60: goto tr116;
1986
+ case 47: goto st21;
1987
+ case 60: goto tr138;
1953
1988
  }
1954
- goto tr115;
1955
- tr119:
1956
- #line 51 "ext/ragel/base_lexer.rl"
1957
- {
1958
- if ( (*p) == '\n' ) lines++;
1959
- }
1960
- goto st73;
1961
- st73:
1989
+ goto tr136;
1990
+ st21:
1962
1991
  if ( ++p == pe )
1963
- goto _test_eof73;
1964
- case 73:
1965
- #line 1966 "ext/c/lexer.c"
1966
- switch( (*p) ) {
1967
- case 60: goto tr116;
1968
- case 115: goto tr120;
1969
- }
1970
- goto tr115;
1971
- tr120:
1972
- #line 51 "ext/ragel/base_lexer.rl"
1973
- {
1974
- if ( (*p) == '\n' ) lines++;
1975
- }
1976
- goto st74;
1977
- st74:
1992
+ goto _test_eof21;
1993
+ case 21:
1994
+ if ( (*p) == 115 )
1995
+ goto st22;
1996
+ goto tr27;
1997
+ st22:
1978
1998
  if ( ++p == pe )
1979
- goto _test_eof74;
1980
- case 74:
1981
- #line 1982 "ext/c/lexer.c"
1982
- switch( (*p) ) {
1983
- case 60: goto tr116;
1984
- case 99: goto tr121;
1985
- case 116: goto tr122;
1986
- }
1987
- goto tr115;
1988
- tr121:
1989
- #line 51 "ext/ragel/base_lexer.rl"
1990
- {
1991
- if ( (*p) == '\n' ) lines++;
1992
- }
1993
- goto st75;
1994
- st75:
1999
+ goto _test_eof22;
2000
+ case 22:
2001
+ if ( (*p) == 99 )
2002
+ goto st23;
2003
+ goto tr27;
2004
+ st23:
1995
2005
  if ( ++p == pe )
1996
- goto _test_eof75;
1997
- case 75:
1998
- #line 1999 "ext/c/lexer.c"
1999
- switch( (*p) ) {
2000
- case 60: goto tr116;
2001
- case 114: goto tr123;
2002
- }
2003
- goto tr115;
2004
- tr123:
2005
- #line 51 "ext/ragel/base_lexer.rl"
2006
- {
2007
- if ( (*p) == '\n' ) lines++;
2008
- }
2009
- goto st76;
2010
- st76:
2006
+ goto _test_eof23;
2007
+ case 23:
2008
+ if ( (*p) == 114 )
2009
+ goto st24;
2010
+ goto tr27;
2011
+ st24:
2011
2012
  if ( ++p == pe )
2012
- goto _test_eof76;
2013
- case 76:
2014
- #line 2015 "ext/c/lexer.c"
2015
- switch( (*p) ) {
2016
- case 60: goto tr116;
2017
- case 105: goto tr124;
2018
- }
2019
- goto tr115;
2020
- tr124:
2021
- #line 51 "ext/ragel/base_lexer.rl"
2022
- {
2023
- if ( (*p) == '\n' ) lines++;
2024
- }
2025
- goto st77;
2026
- st77:
2013
+ goto _test_eof24;
2014
+ case 24:
2015
+ if ( (*p) == 105 )
2016
+ goto st25;
2017
+ goto tr27;
2018
+ st25:
2027
2019
  if ( ++p == pe )
2028
- goto _test_eof77;
2029
- case 77:
2030
- #line 2031 "ext/c/lexer.c"
2031
- switch( (*p) ) {
2032
- case 60: goto tr116;
2033
- case 112: goto tr125;
2034
- }
2035
- goto tr115;
2036
- tr125:
2037
- #line 51 "ext/ragel/base_lexer.rl"
2038
- {
2039
- if ( (*p) == '\n' ) lines++;
2040
- }
2041
- goto st78;
2042
- st78:
2020
+ goto _test_eof25;
2021
+ case 25:
2022
+ if ( (*p) == 112 )
2023
+ goto st26;
2024
+ goto tr27;
2025
+ st26:
2043
2026
  if ( ++p == pe )
2044
- goto _test_eof78;
2045
- case 78:
2046
- #line 2047 "ext/c/lexer.c"
2047
- switch( (*p) ) {
2048
- case 60: goto tr116;
2049
- case 116: goto tr126;
2050
- }
2051
- goto tr115;
2052
- tr126:
2053
- #line 51 "ext/ragel/base_lexer.rl"
2027
+ goto _test_eof26;
2028
+ case 26:
2029
+ if ( (*p) == 116 )
2030
+ goto st27;
2031
+ goto tr27;
2032
+ st27:
2033
+ if ( ++p == pe )
2034
+ goto _test_eof27;
2035
+ case 27:
2036
+ if ( (*p) == 62 )
2037
+ goto tr34;
2038
+ goto tr27;
2039
+ tr138:
2040
+ #line 56 "ext/ragel/base_lexer.rl"
2054
2041
  {
2055
2042
  if ( (*p) == '\n' ) lines++;
2056
2043
  }
2057
- goto st79;
2058
- st79:
2044
+ goto st87;
2045
+ st87:
2059
2046
  if ( ++p == pe )
2060
- goto _test_eof79;
2061
- case 79:
2062
- #line 2063 "ext/c/lexer.c"
2063
- switch( (*p) ) {
2064
- case 60: goto tr116;
2065
- case 62: goto tr127;
2066
- }
2067
- goto tr115;
2068
- tr122:
2069
- #line 51 "ext/ragel/base_lexer.rl"
2047
+ goto _test_eof87;
2048
+ case 87:
2049
+ #line 2050 "ext/c/lexer.c"
2050
+ if ( (*p) == 60 )
2051
+ goto tr138;
2052
+ goto tr136;
2053
+ tr35:
2054
+ #line 519 "ext/ragel/base_lexer.rl"
2055
+ {{p = ((te))-1;}{
2056
+ callback(id_on_text, data, encoding, ts, te);
2057
+
2058
+ if ( lines > 0 )
2059
+ {
2060
+ advance_line(lines);
2061
+
2062
+ lines = 0;
2063
+ }
2064
+ }}
2065
+ goto st88;
2066
+ tr41:
2067
+ ( state->cs) = 88;
2068
+ #line 379 "ext/ragel/base_lexer.rl"
2069
+ {te = p+1;{
2070
+ callback_simple(id_on_element_end);
2071
+
2072
+ ( state->cs) = 34;
2073
+ }}
2074
+ goto _again;
2075
+ tr141:
2076
+ #line 519 "ext/ragel/base_lexer.rl"
2077
+ {te = p;p--;{
2078
+ callback(id_on_text, data, encoding, ts, te);
2079
+
2080
+ if ( lines > 0 )
2081
+ {
2082
+ advance_line(lines);
2083
+
2084
+ lines = 0;
2085
+ }
2086
+ }}
2087
+ goto st88;
2088
+ st88:
2089
+ #line 1 "NONE"
2090
+ {ts = 0;}
2091
+ if ( ++p == pe )
2092
+ goto _test_eof88;
2093
+ case 88:
2094
+ #line 1 "NONE"
2095
+ {ts = p;}
2096
+ #line 2097 "ext/c/lexer.c"
2097
+ if ( (*p) == 60 )
2098
+ goto tr140;
2099
+ goto tr139;
2100
+ tr139:
2101
+ #line 56 "ext/ragel/base_lexer.rl"
2070
2102
  {
2071
2103
  if ( (*p) == '\n' ) lines++;
2072
2104
  }
2073
- goto st80;
2074
- st80:
2105
+ goto st89;
2106
+ st89:
2075
2107
  if ( ++p == pe )
2076
- goto _test_eof80;
2077
- case 80:
2078
- #line 2079 "ext/c/lexer.c"
2079
- switch( (*p) ) {
2080
- case 60: goto tr116;
2081
- case 121: goto tr128;
2082
- }
2083
- goto tr115;
2084
- tr128:
2085
- #line 51 "ext/ragel/base_lexer.rl"
2108
+ goto _test_eof89;
2109
+ case 89:
2110
+ #line 2111 "ext/c/lexer.c"
2111
+ if ( (*p) == 60 )
2112
+ goto tr141;
2113
+ goto tr139;
2114
+ tr140:
2115
+ #line 1 "NONE"
2116
+ {te = p+1;}
2117
+ #line 56 "ext/ragel/base_lexer.rl"
2086
2118
  {
2087
2119
  if ( (*p) == '\n' ) lines++;
2088
2120
  }
2089
- goto st81;
2090
- st81:
2121
+ goto st90;
2122
+ st90:
2091
2123
  if ( ++p == pe )
2092
- goto _test_eof81;
2093
- case 81:
2094
- #line 2095 "ext/c/lexer.c"
2124
+ goto _test_eof90;
2125
+ case 90:
2126
+ #line 2127 "ext/c/lexer.c"
2095
2127
  switch( (*p) ) {
2096
- case 60: goto tr116;
2097
- case 108: goto tr129;
2128
+ case 47: goto st28;
2129
+ case 60: goto tr143;
2098
2130
  }
2099
- goto tr115;
2100
- tr129:
2101
- #line 51 "ext/ragel/base_lexer.rl"
2131
+ goto tr141;
2132
+ st28:
2133
+ if ( ++p == pe )
2134
+ goto _test_eof28;
2135
+ case 28:
2136
+ if ( (*p) == 115 )
2137
+ goto st29;
2138
+ goto tr35;
2139
+ st29:
2140
+ if ( ++p == pe )
2141
+ goto _test_eof29;
2142
+ case 29:
2143
+ if ( (*p) == 116 )
2144
+ goto st30;
2145
+ goto tr35;
2146
+ st30:
2147
+ if ( ++p == pe )
2148
+ goto _test_eof30;
2149
+ case 30:
2150
+ if ( (*p) == 121 )
2151
+ goto st31;
2152
+ goto tr35;
2153
+ st31:
2154
+ if ( ++p == pe )
2155
+ goto _test_eof31;
2156
+ case 31:
2157
+ if ( (*p) == 108 )
2158
+ goto st32;
2159
+ goto tr35;
2160
+ st32:
2161
+ if ( ++p == pe )
2162
+ goto _test_eof32;
2163
+ case 32:
2164
+ if ( (*p) == 101 )
2165
+ goto st33;
2166
+ goto tr35;
2167
+ st33:
2168
+ if ( ++p == pe )
2169
+ goto _test_eof33;
2170
+ case 33:
2171
+ if ( (*p) == 62 )
2172
+ goto tr41;
2173
+ goto tr35;
2174
+ tr143:
2175
+ #line 56 "ext/ragel/base_lexer.rl"
2102
2176
  {
2103
2177
  if ( (*p) == '\n' ) lines++;
2104
2178
  }
2105
- goto st82;
2106
- st82:
2179
+ goto st91;
2180
+ st91:
2107
2181
  if ( ++p == pe )
2108
- goto _test_eof82;
2109
- case 82:
2110
- #line 2111 "ext/c/lexer.c"
2111
- switch( (*p) ) {
2112
- case 60: goto tr116;
2113
- case 101: goto tr126;
2114
- }
2115
- goto tr115;
2182
+ goto _test_eof91;
2183
+ case 91:
2184
+ #line 2185 "ext/c/lexer.c"
2185
+ if ( (*p) == 60 )
2186
+ goto tr143;
2187
+ goto tr141;
2116
2188
  }
2117
- _test_eof22: ( state->cs) = 22; goto _test_eof;
2118
- _test_eof23: ( state->cs) = 23; goto _test_eof;
2189
+ _test_eof34: ( state->cs) = 34; goto _test_eof;
2190
+ _test_eof35: ( state->cs) = 35; goto _test_eof;
2119
2191
  _test_eof1: ( state->cs) = 1; goto _test_eof;
2120
2192
  _test_eof2: ( state->cs) = 2; goto _test_eof;
2121
2193
  _test_eof3: ( state->cs) = 3; goto _test_eof;
@@ -2125,7 +2197,7 @@ case 82:
2125
2197
  _test_eof7: ( state->cs) = 7; goto _test_eof;
2126
2198
  _test_eof8: ( state->cs) = 8; goto _test_eof;
2127
2199
  _test_eof9: ( state->cs) = 9; goto _test_eof;
2128
- _test_eof24: ( state->cs) = 24; goto _test_eof;
2200
+ _test_eof36: ( state->cs) = 36; goto _test_eof;
2129
2201
  _test_eof10: ( state->cs) = 10; goto _test_eof;
2130
2202
  _test_eof11: ( state->cs) = 11; goto _test_eof;
2131
2203
  _test_eof12: ( state->cs) = 12; goto _test_eof;
@@ -2135,29 +2207,17 @@ case 82:
2135
2207
  _test_eof16: ( state->cs) = 16; goto _test_eof;
2136
2208
  _test_eof17: ( state->cs) = 17; goto _test_eof;
2137
2209
  _test_eof18: ( state->cs) = 18; goto _test_eof;
2138
- _test_eof25: ( state->cs) = 25; goto _test_eof;
2139
- _test_eof26: ( state->cs) = 26; goto _test_eof;
2140
- _test_eof27: ( state->cs) = 27; goto _test_eof;
2141
- _test_eof28: ( state->cs) = 28; goto _test_eof;
2142
- _test_eof29: ( state->cs) = 29; goto _test_eof;
2143
- _test_eof30: ( state->cs) = 30; goto _test_eof;
2144
- _test_eof19: ( state->cs) = 19; goto _test_eof;
2145
- _test_eof31: ( state->cs) = 31; goto _test_eof;
2146
- _test_eof32: ( state->cs) = 32; goto _test_eof;
2147
- _test_eof33: ( state->cs) = 33; goto _test_eof;
2148
- _test_eof20: ( state->cs) = 20; goto _test_eof;
2149
- _test_eof34: ( state->cs) = 34; goto _test_eof;
2150
- _test_eof35: ( state->cs) = 35; goto _test_eof;
2151
- _test_eof36: ( state->cs) = 36; goto _test_eof;
2152
2210
  _test_eof37: ( state->cs) = 37; goto _test_eof;
2153
2211
  _test_eof38: ( state->cs) = 38; goto _test_eof;
2154
2212
  _test_eof39: ( state->cs) = 39; goto _test_eof;
2155
2213
  _test_eof40: ( state->cs) = 40; goto _test_eof;
2156
2214
  _test_eof41: ( state->cs) = 41; goto _test_eof;
2157
2215
  _test_eof42: ( state->cs) = 42; goto _test_eof;
2216
+ _test_eof19: ( state->cs) = 19; goto _test_eof;
2158
2217
  _test_eof43: ( state->cs) = 43; goto _test_eof;
2159
2218
  _test_eof44: ( state->cs) = 44; goto _test_eof;
2160
2219
  _test_eof45: ( state->cs) = 45; goto _test_eof;
2220
+ _test_eof20: ( state->cs) = 20; goto _test_eof;
2161
2221
  _test_eof46: ( state->cs) = 46; goto _test_eof;
2162
2222
  _test_eof47: ( state->cs) = 47; goto _test_eof;
2163
2223
  _test_eof48: ( state->cs) = 48; goto _test_eof;
@@ -2178,7 +2238,6 @@ case 82:
2178
2238
  _test_eof63: ( state->cs) = 63; goto _test_eof;
2179
2239
  _test_eof64: ( state->cs) = 64; goto _test_eof;
2180
2240
  _test_eof65: ( state->cs) = 65; goto _test_eof;
2181
- _test_eof21: ( state->cs) = 21; goto _test_eof;
2182
2241
  _test_eof66: ( state->cs) = 66; goto _test_eof;
2183
2242
  _test_eof67: ( state->cs) = 67; goto _test_eof;
2184
2243
  _test_eof68: ( state->cs) = 68; goto _test_eof;
@@ -2196,12 +2255,34 @@ case 82:
2196
2255
  _test_eof80: ( state->cs) = 80; goto _test_eof;
2197
2256
  _test_eof81: ( state->cs) = 81; goto _test_eof;
2198
2257
  _test_eof82: ( state->cs) = 82; goto _test_eof;
2258
+ _test_eof83: ( state->cs) = 83; goto _test_eof;
2259
+ _test_eof84: ( state->cs) = 84; goto _test_eof;
2260
+ _test_eof85: ( state->cs) = 85; goto _test_eof;
2261
+ _test_eof86: ( state->cs) = 86; goto _test_eof;
2262
+ _test_eof21: ( state->cs) = 21; goto _test_eof;
2263
+ _test_eof22: ( state->cs) = 22; goto _test_eof;
2264
+ _test_eof23: ( state->cs) = 23; goto _test_eof;
2265
+ _test_eof24: ( state->cs) = 24; goto _test_eof;
2266
+ _test_eof25: ( state->cs) = 25; goto _test_eof;
2267
+ _test_eof26: ( state->cs) = 26; goto _test_eof;
2268
+ _test_eof27: ( state->cs) = 27; goto _test_eof;
2269
+ _test_eof87: ( state->cs) = 87; goto _test_eof;
2270
+ _test_eof88: ( state->cs) = 88; goto _test_eof;
2271
+ _test_eof89: ( state->cs) = 89; goto _test_eof;
2272
+ _test_eof90: ( state->cs) = 90; goto _test_eof;
2273
+ _test_eof28: ( state->cs) = 28; goto _test_eof;
2274
+ _test_eof29: ( state->cs) = 29; goto _test_eof;
2275
+ _test_eof30: ( state->cs) = 30; goto _test_eof;
2276
+ _test_eof31: ( state->cs) = 31; goto _test_eof;
2277
+ _test_eof32: ( state->cs) = 32; goto _test_eof;
2278
+ _test_eof33: ( state->cs) = 33; goto _test_eof;
2279
+ _test_eof91: ( state->cs) = 91; goto _test_eof;
2199
2280
 
2200
2281
  _test_eof: {}
2201
2282
  if ( p == eof )
2202
2283
  {
2203
2284
  switch ( ( state->cs) ) {
2204
- case 23: goto tr31;
2285
+ case 35: goto tr44;
2205
2286
  case 1: goto tr0;
2206
2287
  case 2: goto tr0;
2207
2288
  case 3: goto tr0;
@@ -2211,7 +2292,7 @@ case 82:
2211
2292
  case 7: goto tr0;
2212
2293
  case 8: goto tr0;
2213
2294
  case 9: goto tr0;
2214
- case 24: goto tr35;
2295
+ case 36: goto tr48;
2215
2296
  case 10: goto tr0;
2216
2297
  case 11: goto tr0;
2217
2298
  case 12: goto tr0;
@@ -2221,59 +2302,68 @@ case 82:
2221
2302
  case 16: goto tr0;
2222
2303
  case 17: goto tr0;
2223
2304
  case 18: goto tr0;
2224
- case 25: goto tr36;
2225
- case 26: goto tr37;
2226
- case 27: goto tr37;
2227
- case 29: goto tr42;
2228
- case 30: goto tr42;
2305
+ case 37: goto tr49;
2306
+ case 38: goto tr50;
2307
+ case 39: goto tr50;
2308
+ case 41: goto tr55;
2309
+ case 42: goto tr55;
2229
2310
  case 19: goto tr23;
2230
- case 32: goto tr46;
2231
- case 33: goto tr46;
2311
+ case 44: goto tr59;
2312
+ case 45: goto tr59;
2232
2313
  case 20: goto tr25;
2233
- case 35: goto tr50;
2234
- case 36: goto tr50;
2235
- case 38: goto tr54;
2236
- case 40: goto tr57;
2237
- case 42: goto tr60;
2238
- case 44: goto tr69;
2239
- case 45: goto tr70;
2240
- case 46: goto tr70;
2241
- case 47: goto tr70;
2242
- case 48: goto tr70;
2243
- case 49: goto tr70;
2244
- case 50: goto tr70;
2245
- case 51: goto tr70;
2314
+ case 47: goto tr63;
2315
+ case 48: goto tr63;
2316
+ case 50: goto tr67;
2246
2317
  case 52: goto tr70;
2247
- case 53: goto tr70;
2248
- case 54: goto tr70;
2318
+ case 54: goto tr73;
2249
2319
  case 56: goto tr85;
2250
- case 57: goto tr87;
2251
- case 59: goto tr90;
2252
- case 61: goto tr95;
2253
- case 64: goto tr106;
2254
- case 65: goto tr107;
2255
- case 67: goto tr111;
2256
- case 68: goto tr111;
2257
- case 69: goto tr111;
2258
- case 71: goto tr117;
2259
- case 72: goto tr118;
2260
- case 73: goto tr118;
2261
- case 74: goto tr118;
2262
- case 75: goto tr118;
2263
- case 76: goto tr118;
2264
- case 77: goto tr118;
2265
- case 78: goto tr118;
2266
- case 79: goto tr118;
2267
- case 80: goto tr118;
2268
- case 81: goto tr118;
2269
- case 82: goto tr118;
2320
+ case 57: goto tr86;
2321
+ case 58: goto tr87;
2322
+ case 59: goto tr87;
2323
+ case 60: goto tr87;
2324
+ case 61: goto tr87;
2325
+ case 62: goto tr87;
2326
+ case 63: goto tr87;
2327
+ case 64: goto tr87;
2328
+ case 65: goto tr87;
2329
+ case 66: goto tr87;
2330
+ case 67: goto tr87;
2331
+ case 69: goto tr102;
2332
+ case 70: goto tr104;
2333
+ case 72: goto tr107;
2334
+ case 74: goto tr112;
2335
+ case 77: goto tr123;
2336
+ case 78: goto tr124;
2337
+ case 79: goto tr126;
2338
+ case 81: goto tr130;
2339
+ case 82: goto tr130;
2340
+ case 83: goto tr130;
2341
+ case 85: goto tr136;
2342
+ case 86: goto tr136;
2343
+ case 21: goto tr27;
2344
+ case 22: goto tr27;
2345
+ case 23: goto tr27;
2346
+ case 24: goto tr27;
2347
+ case 25: goto tr27;
2348
+ case 26: goto tr27;
2349
+ case 27: goto tr27;
2350
+ case 87: goto tr136;
2351
+ case 89: goto tr141;
2352
+ case 90: goto tr141;
2353
+ case 28: goto tr35;
2354
+ case 29: goto tr35;
2355
+ case 30: goto tr35;
2356
+ case 31: goto tr35;
2357
+ case 32: goto tr35;
2358
+ case 33: goto tr35;
2359
+ case 91: goto tr141;
2270
2360
  }
2271
2361
  }
2272
2362
 
2273
2363
  _out: {}
2274
2364
  }
2275
2365
 
2276
- #line 129 "ext/c/lexer.rl"
2366
+ #line 133 "ext/c/lexer.rl"
2277
2367
 
2278
2368
  state->lines = lines;
2279
2369
 
@@ -2317,7 +2407,7 @@ VALUE oga_xml_lexer_allocate(VALUE klass)
2317
2407
  }
2318
2408
 
2319
2409
 
2320
- #line 178 "ext/c/lexer.rl"
2410
+ #line 182 "ext/c/lexer.rl"
2321
2411
 
2322
2412
 
2323
2413
  void Init_liboga_xml_lexer()
@@ -2326,9 +2416,10 @@ void Init_liboga_xml_lexer()
2326
2416
  VALUE mXML = rb_const_get(mOga, rb_intern("XML"));
2327
2417
  VALUE cLexer = rb_define_class_under(mXML, "Lexer", rb_cObject);
2328
2418
 
2329
- id_advance_line = rb_intern("advance_line");
2330
- id_literal_html_element_p = rb_intern("literal_html_element?");
2331
- id_html = rb_intern("html");
2419
+ id_advance_line = rb_intern("advance_line");
2420
+ id_html_script_p = rb_intern("html_script?");
2421
+ id_html_style_p = rb_intern("html_style?");
2422
+ id_html = rb_intern("html");
2332
2423
 
2333
2424
  rb_define_method(cLexer, "advance_native", oga_xml_lexer_advance, 1);
2334
2425
  rb_define_method(cLexer, "reset_native", oga_xml_lexer_reset, 0);