oga 1.0.2-java → 1.0.3-java

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c975aa7eb90663ee1d31e00a082511ada9241128
4
- data.tar.gz: 506fd36477791b4615a492d2f504be76abd688d2
3
+ metadata.gz: 4df6e33c9a4d34b93293ca5edc7a1498615ceb0d
4
+ data.tar.gz: 82d2a4c041ea36058e2dfa5dc9d54c6bfd8993f0
5
5
  SHA512:
6
- metadata.gz: 9743465bda3a3e1a048515fb339f315b6b97ed94ae0589cbd9a233f8020386015bd9b81757150ec9b8e94fb826d0e5b05b802bc7cfa484449d45440d4ac3bcde
7
- data.tar.gz: 1e90923b83495c3492d9ea2c68512f02f6282b6ccba894d3c9781410969cdf50019f7a654397cedbfd749e05e120ab7e4cb2b6c81d8217f756c1466a60cb723b
6
+ metadata.gz: 09bb1628f2c61a8fde962b74703044cbad9f3c5e67e10be8bb9dc859a1995d2c5bb875866e91bf270d52ffa31bf6dad41c5b3919ea1eb68abbc2ab755c6ca3c0
7
+ data.tar.gz: cd75a02e1b431c8f363fee503244b39a9f26988d74df5cb4e9508e390df61128ddd5cbc48e1c78ee5ceba1d6d2242d9a51f15eeba3a3b9c4a67061e4e8b9e709
data/README.md CHANGED
@@ -28,6 +28,11 @@ Parsing a simple string of XML:
28
28
 
29
29
  Oga.parse_xml('<people><person>Alice</person></people>')
30
30
 
31
+ Parsing XML using strict mode (disables automatic tag insertion):
32
+
33
+ Oga.parse_xml('<people>foo</people>', :strict => true) # works fine
34
+ Oga.parse_xml('<people>foo', :strict => true) # throws an error
35
+
31
36
  Parsing a simple string of HTML:
32
37
 
33
38
  Oga.parse_html('<link rel="stylesheet" href="foo.css">')
data/ext/c/lexer.c CHANGED
@@ -30,7 +30,7 @@ on `ts` and `te`) so the macro ignores this argument.
30
30
  ID id_advance_line;
31
31
  ID id_html_script_p;
32
32
  ID id_html_style_p;
33
- ID id_html;
33
+ ID id_html_p;
34
34
 
35
35
 
36
36
  #line 34 "ext/c/lexer.rl"
@@ -85,12 +85,13 @@ static const int c_lexer_en_doctype = 53;
85
85
  static const int c_lexer_en_xml_decl = 66;
86
86
  static const int c_lexer_en_element_name = 69;
87
87
  static const int c_lexer_en_element_close = 71;
88
- static const int c_lexer_en_html_attribute_value = 73;
89
- static const int c_lexer_en_xml_attribute_value = 75;
90
- static const int c_lexer_en_element_head = 76;
91
- static const int c_lexer_en_text = 80;
92
- static const int c_lexer_en_html_script = 84;
93
- static const int c_lexer_en_html_style = 88;
88
+ static const int c_lexer_en_attribute_pre = 73;
89
+ static const int c_lexer_en_html_attribute_value = 75;
90
+ static const int c_lexer_en_xml_attribute_value = 77;
91
+ static const int c_lexer_en_element_head = 78;
92
+ static const int c_lexer_en_text = 82;
93
+ static const int c_lexer_en_html_script = 86;
94
+ static const int c_lexer_en_html_style = 90;
94
95
  static const int c_lexer_en_main = 32;
95
96
 
96
97
 
@@ -109,7 +110,7 @@ VALUE oga_xml_lexer_advance(VALUE self, VALUE data_block)
109
110
  int lines;
110
111
 
111
112
  /* Whether or not HTML mode is enabled */
112
- int html_p = rb_funcall(self, id_html, 0) == Qtrue;
113
+ int html_p = rb_funcall(self, id_html_p, 0) == Qtrue;
113
114
 
114
115
  /* Make sure that all data passed back to Ruby has the proper encoding. */
115
116
  rb_encoding *encoding = rb_enc_get(data_block);
@@ -157,7 +158,7 @@ VALUE oga_xml_lexer_advance(VALUE self, VALUE data_block)
157
158
  lines = state->lines;
158
159
 
159
160
 
160
- #line 161 "ext/c/lexer.c"
161
+ #line 162 "ext/c/lexer.c"
161
162
  {
162
163
  if ( p == pe )
163
164
  goto _test_eof;
@@ -239,6 +240,8 @@ _again:
239
240
  case 84: goto st84;
240
241
  case 85: goto st85;
241
242
  case 86: goto st86;
243
+ case 87: goto st87;
244
+ case 88: goto st88;
242
245
  case 19: goto st19;
243
246
  case 20: goto st20;
244
247
  case 21: goto st21;
@@ -246,17 +249,17 @@ _again:
246
249
  case 23: goto st23;
247
250
  case 24: goto st24;
248
251
  case 25: goto st25;
249
- case 87: goto st87;
250
- case 88: goto st88;
251
252
  case 89: goto st89;
252
253
  case 90: goto st90;
254
+ case 91: goto st91;
255
+ case 92: goto st92;
253
256
  case 26: goto st26;
254
257
  case 27: goto st27;
255
258
  case 28: goto st28;
256
259
  case 29: goto st29;
257
260
  case 30: goto st30;
258
261
  case 31: goto st31;
259
- case 91: goto st91;
262
+ case 93: goto st93;
260
263
  default: break;
261
264
  }
262
265
 
@@ -267,10 +270,10 @@ _resume:
267
270
  {
268
271
  tr0:
269
272
  ( state->cs) = 32;
270
- #line 530 "ext/ragel/base_lexer.rl"
273
+ #line 549 "ext/ragel/base_lexer.rl"
271
274
  {{p = ((te))-1;}{
272
275
  p--;
273
- ( state->cs) = 80;
276
+ ( state->cs) = 82;
274
277
  }}
275
278
  goto _again;
276
279
  tr4:
@@ -293,18 +296,18 @@ tr17:
293
296
  goto _again;
294
297
  tr39:
295
298
  ( state->cs) = 32;
296
- #line 530 "ext/ragel/base_lexer.rl"
299
+ #line 549 "ext/ragel/base_lexer.rl"
297
300
  {te = p+1;{
298
301
  p--;
299
- ( state->cs) = 80;
302
+ ( state->cs) = 82;
300
303
  }}
301
304
  goto _again;
302
305
  tr41:
303
306
  ( state->cs) = 32;
304
- #line 530 "ext/ragel/base_lexer.rl"
307
+ #line 549 "ext/ragel/base_lexer.rl"
305
308
  {te = p;p--;{
306
309
  p--;
307
- ( state->cs) = 80;
310
+ ( state->cs) = 82;
308
311
  }}
309
312
  goto _again;
310
313
  tr43:
@@ -342,13 +345,13 @@ tr47:
342
345
  ( state->cs) = 32;
343
346
  #line 1 "NONE"
344
347
  { switch( ( state->act) ) {
345
- case 52:
348
+ case 54:
346
349
  {{p = ((te))-1;}
347
350
  callback_simple(id_on_xml_decl_start);
348
351
  ( state->cs) = 66;
349
352
  }
350
353
  break;
351
- case 55:
354
+ case 57:
352
355
  {{p = ((te))-1;}
353
356
  callback_simple(id_on_proc_ins_start);
354
357
  callback(id_on_proc_ins_name, data, encoding, ts + 2, te);
@@ -377,7 +380,7 @@ st32:
377
380
  case 32:
378
381
  #line 1 "NONE"
379
382
  {ts = p;}
380
- #line 381 "ext/c/lexer.c"
383
+ #line 384 "ext/c/lexer.c"
381
384
  if ( (*p) == 60 )
382
385
  goto tr40;
383
386
  goto tr39;
@@ -389,7 +392,7 @@ st33:
389
392
  if ( ++p == pe )
390
393
  goto _test_eof33;
391
394
  case 33:
392
- #line 393 "ext/c/lexer.c"
395
+ #line 396 "ext/c/lexer.c"
393
396
  switch( (*p) ) {
394
397
  case 33: goto st1;
395
398
  case 45: goto tr43;
@@ -499,7 +502,7 @@ st34:
499
502
  if ( ++p == pe )
500
503
  goto _test_eof34;
501
504
  case 34:
502
- #line 503 "ext/c/lexer.c"
505
+ #line 506 "ext/c/lexer.c"
503
506
  switch( (*p) ) {
504
507
  case 13: goto tr11;
505
508
  case 32: goto tr11;
@@ -571,19 +574,19 @@ tr18:
571
574
  #line 1 "NONE"
572
575
  {te = p+1;}
573
576
  #line 165 "ext/ragel/base_lexer.rl"
574
- {( state->act) = 55;}
577
+ {( state->act) = 57;}
575
578
  goto st35;
576
579
  tr50:
577
580
  #line 1 "NONE"
578
581
  {te = p+1;}
579
582
  #line 319 "ext/ragel/base_lexer.rl"
580
- {( state->act) = 52;}
583
+ {( state->act) = 54;}
581
584
  goto st35;
582
585
  st35:
583
586
  if ( ++p == pe )
584
587
  goto _test_eof35;
585
588
  case 35:
586
- #line 587 "ext/c/lexer.c"
589
+ #line 590 "ext/c/lexer.c"
587
590
  switch( (*p) ) {
588
591
  case 45: goto tr18;
589
592
  case 95: goto tr18;
@@ -676,7 +679,7 @@ st38:
676
679
  case 38:
677
680
  #line 1 "NONE"
678
681
  {ts = p;}
679
- #line 680 "ext/c/lexer.c"
682
+ #line 683 "ext/c/lexer.c"
680
683
  if ( (*p) == 45 )
681
684
  goto tr52;
682
685
  goto tr51;
@@ -690,7 +693,7 @@ st39:
690
693
  if ( ++p == pe )
691
694
  goto _test_eof39;
692
695
  case 39:
693
- #line 694 "ext/c/lexer.c"
696
+ #line 697 "ext/c/lexer.c"
694
697
  if ( (*p) == 45 )
695
698
  goto tr53;
696
699
  goto tr51;
@@ -706,7 +709,7 @@ st40:
706
709
  if ( ++p == pe )
707
710
  goto _test_eof40;
708
711
  case 40:
709
- #line 710 "ext/c/lexer.c"
712
+ #line 713 "ext/c/lexer.c"
710
713
  if ( (*p) == 45 )
711
714
  goto st17;
712
715
  goto tr53;
@@ -760,7 +763,7 @@ st41:
760
763
  case 41:
761
764
  #line 1 "NONE"
762
765
  {ts = p;}
763
- #line 764 "ext/c/lexer.c"
766
+ #line 767 "ext/c/lexer.c"
764
767
  if ( (*p) == 93 )
765
768
  goto tr56;
766
769
  goto tr55;
@@ -774,7 +777,7 @@ st42:
774
777
  if ( ++p == pe )
775
778
  goto _test_eof42;
776
779
  case 42:
777
- #line 778 "ext/c/lexer.c"
780
+ #line 781 "ext/c/lexer.c"
778
781
  if ( (*p) == 93 )
779
782
  goto tr57;
780
783
  goto tr55;
@@ -790,7 +793,7 @@ st43:
790
793
  if ( ++p == pe )
791
794
  goto _test_eof43;
792
795
  case 43:
793
- #line 794 "ext/c/lexer.c"
796
+ #line 797 "ext/c/lexer.c"
794
797
  if ( (*p) == 93 )
795
798
  goto st18;
796
799
  goto tr57;
@@ -831,7 +834,7 @@ st44:
831
834
  case 44:
832
835
  #line 1 "NONE"
833
836
  {ts = p;}
834
- #line 835 "ext/c/lexer.c"
837
+ #line 838 "ext/c/lexer.c"
835
838
  if ( (*p) == 63 )
836
839
  goto tr60;
837
840
  goto tr59;
@@ -845,7 +848,7 @@ st45:
845
848
  if ( ++p == pe )
846
849
  goto _test_eof45;
847
850
  case 45:
848
- #line 849 "ext/c/lexer.c"
851
+ #line 852 "ext/c/lexer.c"
849
852
  if ( (*p) == 63 )
850
853
  goto tr61;
851
854
  goto tr59;
@@ -859,7 +862,7 @@ st46:
859
862
  if ( ++p == pe )
860
863
  goto _test_eof46;
861
864
  case 46:
862
- #line 863 "ext/c/lexer.c"
865
+ #line 866 "ext/c/lexer.c"
863
866
  if ( (*p) == 62 )
864
867
  goto tr62;
865
868
  goto tr61;
@@ -892,7 +895,7 @@ st47:
892
895
  case 47:
893
896
  #line 1 "NONE"
894
897
  {ts = p;}
895
- #line 896 "ext/c/lexer.c"
898
+ #line 899 "ext/c/lexer.c"
896
899
  if ( (*p) == 39 )
897
900
  goto tr64;
898
901
  goto tr63;
@@ -906,7 +909,7 @@ st48:
906
909
  if ( ++p == pe )
907
910
  goto _test_eof48;
908
911
  case 48:
909
- #line 910 "ext/c/lexer.c"
912
+ #line 913 "ext/c/lexer.c"
910
913
  if ( (*p) == 39 )
911
914
  goto tr65;
912
915
  goto tr63;
@@ -939,7 +942,7 @@ st49:
939
942
  case 49:
940
943
  #line 1 "NONE"
941
944
  {ts = p;}
942
- #line 943 "ext/c/lexer.c"
945
+ #line 946 "ext/c/lexer.c"
943
946
  if ( (*p) == 34 )
944
947
  goto tr67;
945
948
  goto tr66;
@@ -953,7 +956,7 @@ st50:
953
956
  if ( ++p == pe )
954
957
  goto _test_eof50;
955
958
  case 50:
956
- #line 957 "ext/c/lexer.c"
959
+ #line 960 "ext/c/lexer.c"
957
960
  if ( (*p) == 34 )
958
961
  goto tr68;
959
962
  goto tr66;
@@ -983,7 +986,7 @@ st51:
983
986
  case 51:
984
987
  #line 1 "NONE"
985
988
  {ts = p;}
986
- #line 987 "ext/c/lexer.c"
989
+ #line 990 "ext/c/lexer.c"
987
990
  if ( (*p) == 93 )
988
991
  goto tr70;
989
992
  goto tr69;
@@ -997,7 +1000,7 @@ st52:
997
1000
  if ( ++p == pe )
998
1001
  goto _test_eof52;
999
1002
  case 52:
1000
- #line 1001 "ext/c/lexer.c"
1003
+ #line 1004 "ext/c/lexer.c"
1001
1004
  if ( (*p) == 93 )
1002
1005
  goto tr71;
1003
1006
  goto tr69;
@@ -1076,7 +1079,7 @@ st53:
1076
1079
  case 53:
1077
1080
  #line 1 "NONE"
1078
1081
  {ts = p;}
1079
- #line 1080 "ext/c/lexer.c"
1082
+ #line 1083 "ext/c/lexer.c"
1080
1083
  switch( (*p) ) {
1081
1084
  case 9: goto tr72;
1082
1085
  case 10: goto tr74;
@@ -1126,7 +1129,7 @@ st55:
1126
1129
  if ( ++p == pe )
1127
1130
  goto _test_eof55;
1128
1131
  case 55:
1129
- #line 1130 "ext/c/lexer.c"
1132
+ #line 1133 "ext/c/lexer.c"
1130
1133
  switch( (*p) ) {
1131
1134
  case 45: goto tr78;
1132
1135
  case 95: goto tr78;
@@ -1393,7 +1396,7 @@ st66:
1393
1396
  case 66:
1394
1397
  #line 1 "NONE"
1395
1398
  {ts = p;}
1396
- #line 1397 "ext/c/lexer.c"
1399
+ #line 1400 "ext/c/lexer.c"
1397
1400
  switch( (*p) ) {
1398
1401
  case 34: goto tr96;
1399
1402
  case 39: goto tr97;
@@ -1420,7 +1423,7 @@ st67:
1420
1423
  if ( ++p == pe )
1421
1424
  goto _test_eof67;
1422
1425
  case 67:
1423
- #line 1424 "ext/c/lexer.c"
1426
+ #line 1427 "ext/c/lexer.c"
1424
1427
  switch( (*p) ) {
1425
1428
  case 45: goto st67;
1426
1429
  case 95: goto st67;
@@ -1444,7 +1447,7 @@ st68:
1444
1447
  if ( ++p == pe )
1445
1448
  goto _test_eof68;
1446
1449
  case 68:
1447
- #line 1448 "ext/c/lexer.c"
1450
+ #line 1451 "ext/c/lexer.c"
1448
1451
  if ( (*p) == 62 )
1449
1452
  goto tr103;
1450
1453
  goto tr102;
@@ -1453,7 +1456,7 @@ tr105:
1453
1456
  #line 394 "ext/ragel/base_lexer.rl"
1454
1457
  {te = p;p--;{
1455
1458
  callback(id_on_element_name, data, encoding, ts, te);
1456
- ( state->cs) = 76;
1459
+ ( state->cs) = 78;
1457
1460
  }}
1458
1461
  goto _again;
1459
1462
  tr106:
@@ -1470,7 +1473,7 @@ st69:
1470
1473
  case 69:
1471
1474
  #line 1 "NONE"
1472
1475
  {ts = p;}
1473
- #line 1474 "ext/c/lexer.c"
1476
+ #line 1477 "ext/c/lexer.c"
1474
1477
  switch( (*p) ) {
1475
1478
  case 45: goto st70;
1476
1479
  case 95: goto st70;
@@ -1546,7 +1549,7 @@ st71:
1546
1549
  case 71:
1547
1550
  #line 1 "NONE"
1548
1551
  {ts = p;}
1549
- #line 1550 "ext/c/lexer.c"
1552
+ #line 1553 "ext/c/lexer.c"
1550
1553
  switch( (*p) ) {
1551
1554
  case 45: goto tr108;
1552
1555
  case 62: goto tr109;
@@ -1571,7 +1574,7 @@ st72:
1571
1574
  if ( ++p == pe )
1572
1575
  goto _test_eof72;
1573
1576
  case 72:
1574
- #line 1575 "ext/c/lexer.c"
1577
+ #line 1578 "ext/c/lexer.c"
1575
1578
  switch( (*p) ) {
1576
1579
  case 45: goto st72;
1577
1580
  case 58: goto tr112;
@@ -1586,30 +1589,40 @@ case 72:
1586
1589
  } else
1587
1590
  goto st72;
1588
1591
  goto tr110;
1589
- tr114:
1590
- #line 64 "ext/ragel/base_lexer.rl"
1591
- {te = p+1;{
1592
- p--;
1593
- {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
1594
- }}
1595
- goto st73;
1596
- tr115:
1592
+ tr113:
1597
1593
  ( state->cs) = 73;
1598
- #line 431 "ext/ragel/base_lexer.rl"
1594
+ #line 434 "ext/ragel/base_lexer.rl"
1599
1595
  {te = p+1;{
1600
1596
  p--;
1601
- ( state->cs) = 75;
1602
- }}
1603
- goto _again;
1604
- tr116:
1605
- #line 438 "ext/ragel/base_lexer.rl"
1606
- {te = p;p--;{
1607
- callback_simple(id_on_string_squote);
1608
1597
 
1609
- callback(id_on_string_body, data, encoding, ts, te);
1598
+ if ( lines > 0 )
1599
+ {
1600
+ advance_line(lines);
1610
1601
 
1611
- callback_simple(id_on_string_squote);
1602
+ lines = 0;
1603
+ }
1604
+
1605
+ if ( html_p )
1606
+ {
1607
+ ( state->cs) = 75;
1608
+ }
1609
+ else
1610
+ {
1611
+ ( state->cs) = 77;
1612
+ }
1612
1613
  }}
1614
+ goto _again;
1615
+ tr114:
1616
+ #line 56 "ext/ragel/base_lexer.rl"
1617
+ {
1618
+ if ( (*p) == '\n' ) lines++;
1619
+ }
1620
+ #line 432 "ext/ragel/base_lexer.rl"
1621
+ {te = p+1;}
1622
+ goto st73;
1623
+ tr116:
1624
+ #line 432 "ext/ragel/base_lexer.rl"
1625
+ {te = p;p--;}
1613
1626
  goto st73;
1614
1627
  st73:
1615
1628
  #line 1 "NONE"
@@ -1619,112 +1632,178 @@ st73:
1619
1632
  case 73:
1620
1633
  #line 1 "NONE"
1621
1634
  {ts = p;}
1622
- #line 1623 "ext/c/lexer.c"
1635
+ #line 1636 "ext/c/lexer.c"
1623
1636
  switch( (*p) ) {
1624
- case 13: goto tr114;
1637
+ case 13: goto tr115;
1625
1638
  case 32: goto tr114;
1626
- case 34: goto tr115;
1627
- case 39: goto tr115;
1628
- case 96: goto tr114;
1629
1639
  }
1630
- if ( (*p) > 10 ) {
1631
- if ( 60 <= (*p) && (*p) <= 62 )
1632
- goto tr114;
1633
- } else if ( (*p) >= 9 )
1640
+ if ( 9 <= (*p) && (*p) <= 10 )
1634
1641
  goto tr114;
1642
+ goto tr113;
1643
+ tr115:
1644
+ #line 56 "ext/ragel/base_lexer.rl"
1645
+ {
1646
+ if ( (*p) == '\n' ) lines++;
1647
+ }
1635
1648
  goto st74;
1636
1649
  st74:
1637
1650
  if ( ++p == pe )
1638
1651
  goto _test_eof74;
1639
1652
  case 74:
1653
+ #line 1654 "ext/c/lexer.c"
1654
+ if ( (*p) == 10 )
1655
+ goto tr114;
1656
+ goto tr116;
1657
+ tr118:
1658
+ #line 64 "ext/ragel/base_lexer.rl"
1659
+ {te = p+1;{
1660
+ p--;
1661
+ {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
1662
+ }}
1663
+ goto st75;
1664
+ tr119:
1665
+ ( state->cs) = 75;
1666
+ #line 457 "ext/ragel/base_lexer.rl"
1667
+ {te = p+1;{
1668
+ p--;
1669
+ ( state->cs) = 77;
1670
+ }}
1671
+ goto _again;
1672
+ tr120:
1673
+ #line 1 "NONE"
1674
+ { switch( ( state->act) ) {
1675
+ case 35:
1676
+ {{p = ((te))-1;}
1677
+ callback_simple(id_on_string_squote);
1678
+
1679
+ callback(id_on_string_body, data, encoding, ts, te);
1680
+
1681
+ callback_simple(id_on_string_squote);
1682
+ }
1683
+ break;
1684
+ case 36:
1685
+ {{p = ((te))-1;}
1686
+ p--;
1687
+ {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
1688
+ }
1689
+ break;
1690
+ }
1691
+ }
1692
+ goto st75;
1693
+ st75:
1694
+ #line 1 "NONE"
1695
+ {ts = 0;}
1696
+ if ( ++p == pe )
1697
+ goto _test_eof75;
1698
+ case 75:
1699
+ #line 1 "NONE"
1700
+ {ts = p;}
1701
+ #line 1702 "ext/c/lexer.c"
1640
1702
  switch( (*p) ) {
1641
- case 13: goto tr116;
1642
- case 32: goto tr116;
1643
- case 34: goto tr116;
1644
- case 39: goto tr116;
1645
- case 96: goto tr116;
1703
+ case 13: goto tr118;
1704
+ case 32: goto tr118;
1705
+ case 34: goto tr119;
1706
+ case 39: goto tr119;
1707
+ }
1708
+ if ( 9 <= (*p) && (*p) <= 10 )
1709
+ goto tr118;
1710
+ goto tr117;
1711
+ tr117:
1712
+ #line 1 "NONE"
1713
+ {te = p+1;}
1714
+ #line 64 "ext/ragel/base_lexer.rl"
1715
+ {( state->act) = 36;}
1716
+ goto st76;
1717
+ tr121:
1718
+ #line 1 "NONE"
1719
+ {te = p+1;}
1720
+ #line 464 "ext/ragel/base_lexer.rl"
1721
+ {( state->act) = 35;}
1722
+ goto st76;
1723
+ st76:
1724
+ if ( ++p == pe )
1725
+ goto _test_eof76;
1726
+ case 76:
1727
+ #line 1728 "ext/c/lexer.c"
1728
+ switch( (*p) ) {
1729
+ case 13: goto tr120;
1730
+ case 32: goto tr120;
1731
+ case 96: goto tr120;
1646
1732
  }
1647
1733
  if ( (*p) > 10 ) {
1648
1734
  if ( 60 <= (*p) && (*p) <= 62 )
1649
- goto tr116;
1735
+ goto tr120;
1650
1736
  } else if ( (*p) >= 9 )
1651
- goto tr116;
1652
- goto st74;
1653
- tr117:
1737
+ goto tr120;
1738
+ goto tr121;
1739
+ tr122:
1654
1740
  #line 64 "ext/ragel/base_lexer.rl"
1655
1741
  {te = p+1;{
1656
1742
  p--;
1657
1743
  {( state->cs) = ( state->stack)[--( state->top)];goto _again;}
1658
1744
  }}
1659
- goto st75;
1660
- tr118:
1661
- ( state->cs) = 75;
1662
- #line 460 "ext/ragel/base_lexer.rl"
1745
+ goto st77;
1746
+ tr123:
1747
+ ( state->cs) = 77;
1748
+ #line 486 "ext/ragel/base_lexer.rl"
1663
1749
  {te = p+1;{
1664
1750
  callback_simple(id_on_string_dquote);
1665
1751
 
1666
1752
  ( state->cs) = 49;
1667
1753
  }}
1668
1754
  goto _again;
1669
- tr119:
1670
- ( state->cs) = 75;
1671
- #line 454 "ext/ragel/base_lexer.rl"
1755
+ tr124:
1756
+ ( state->cs) = 77;
1757
+ #line 480 "ext/ragel/base_lexer.rl"
1672
1758
  {te = p+1;{
1673
1759
  callback_simple(id_on_string_squote);
1674
1760
 
1675
1761
  ( state->cs) = 47;
1676
1762
  }}
1677
1763
  goto _again;
1678
- st75:
1764
+ st77:
1679
1765
  #line 1 "NONE"
1680
1766
  {ts = 0;}
1681
1767
  if ( ++p == pe )
1682
- goto _test_eof75;
1683
- case 75:
1768
+ goto _test_eof77;
1769
+ case 77:
1684
1770
  #line 1 "NONE"
1685
1771
  {ts = p;}
1686
- #line 1687 "ext/c/lexer.c"
1772
+ #line 1773 "ext/c/lexer.c"
1687
1773
  switch( (*p) ) {
1688
- case 34: goto tr118;
1689
- case 39: goto tr119;
1774
+ case 34: goto tr123;
1775
+ case 39: goto tr124;
1690
1776
  }
1691
- goto tr117;
1692
- tr120:
1693
- #line 519 "ext/ragel/base_lexer.rl"
1777
+ goto tr122;
1778
+ tr125:
1779
+ #line 538 "ext/ragel/base_lexer.rl"
1694
1780
  {te = p+1;}
1695
- goto st76;
1696
- tr121:
1781
+ goto st78;
1782
+ tr126:
1697
1783
  #line 60 "ext/ragel/base_lexer.rl"
1698
1784
  {te = p+1;{
1699
1785
  advance_line(1);
1700
1786
  }}
1701
- goto st76;
1702
- tr125:
1703
- #line 484 "ext/ragel/base_lexer.rl"
1787
+ goto st78;
1788
+ tr130:
1789
+ #line 510 "ext/ragel/base_lexer.rl"
1704
1790
  {te = p+1;{
1705
- if ( html_p )
1706
- {
1707
- {( state->stack)[( state->top)++] = 76; goto st73;}
1708
- }
1709
- else
1710
- {
1711
- {( state->stack)[( state->top)++] = 76; goto st75;}
1712
- }
1791
+ {( state->stack)[( state->top)++] = 78; goto st73;}
1713
1792
  }}
1714
- goto st76;
1715
- tr126:
1716
- ( state->cs) = 76;
1717
- #line 496 "ext/ragel/base_lexer.rl"
1793
+ goto st78;
1794
+ tr131:
1795
+ ( state->cs) = 78;
1796
+ #line 515 "ext/ragel/base_lexer.rl"
1718
1797
  {te = p+1;{
1719
1798
  callback_simple(id_on_element_open_end);
1720
1799
 
1721
1800
  if ( html_script_p() )
1722
1801
  {
1723
- ( state->cs) = 84;
1802
+ ( state->cs) = 86;
1724
1803
  }
1725
1804
  else if ( html_style_p() )
1726
1805
  {
1727
- ( state->cs) = 88;
1806
+ ( state->cs) = 90;
1728
1807
  }
1729
1808
  else
1730
1809
  {
@@ -1732,98 +1811,98 @@ tr126:
1732
1811
  }
1733
1812
  }}
1734
1813
  goto _again;
1735
- tr127:
1814
+ tr132:
1736
1815
  #line 60 "ext/ragel/base_lexer.rl"
1737
1816
  {te = p;p--;{
1738
1817
  advance_line(1);
1739
1818
  }}
1740
- goto st76;
1741
- tr128:
1742
- #line 479 "ext/ragel/base_lexer.rl"
1819
+ goto st78;
1820
+ tr133:
1821
+ #line 505 "ext/ragel/base_lexer.rl"
1743
1822
  {te = p;p--;{
1744
1823
  callback(id_on_attribute, data, encoding, ts, te);
1745
1824
  }}
1746
- goto st76;
1747
- tr129:
1748
- #line 475 "ext/ragel/base_lexer.rl"
1825
+ goto st78;
1826
+ tr134:
1827
+ #line 501 "ext/ragel/base_lexer.rl"
1749
1828
  {te = p+1;{
1750
1829
  callback(id_on_attribute_ns, data, encoding, ts, te - 1);
1751
1830
  }}
1752
- goto st76;
1753
- tr130:
1754
- #line 519 "ext/ragel/base_lexer.rl"
1831
+ goto st78;
1832
+ tr135:
1833
+ #line 538 "ext/ragel/base_lexer.rl"
1755
1834
  {te = p;p--;}
1756
- goto st76;
1757
- tr131:
1758
- ( state->cs) = 76;
1759
- #line 514 "ext/ragel/base_lexer.rl"
1835
+ goto st78;
1836
+ tr136:
1837
+ ( state->cs) = 78;
1838
+ #line 533 "ext/ragel/base_lexer.rl"
1760
1839
  {te = p+1;{
1761
1840
  callback_simple(id_on_element_end);
1762
1841
  ( state->cs) = 32;
1763
1842
  }}
1764
1843
  goto _again;
1765
- st76:
1844
+ st78:
1766
1845
  #line 1 "NONE"
1767
1846
  {ts = 0;}
1768
1847
  if ( ++p == pe )
1769
- goto _test_eof76;
1770
- case 76:
1848
+ goto _test_eof78;
1849
+ case 78:
1771
1850
  #line 1 "NONE"
1772
1851
  {ts = p;}
1773
- #line 1774 "ext/c/lexer.c"
1852
+ #line 1853 "ext/c/lexer.c"
1774
1853
  switch( (*p) ) {
1775
- case 10: goto tr121;
1776
- case 13: goto st77;
1777
- case 45: goto st78;
1778
- case 47: goto st79;
1779
- case 61: goto tr125;
1780
- case 62: goto tr126;
1781
- case 95: goto st78;
1854
+ case 10: goto tr126;
1855
+ case 13: goto st79;
1856
+ case 45: goto st80;
1857
+ case 47: goto st81;
1858
+ case 61: goto tr130;
1859
+ case 62: goto tr131;
1860
+ case 95: goto st80;
1782
1861
  }
1783
1862
  if ( (*p) < 65 ) {
1784
1863
  if ( 48 <= (*p) && (*p) <= 57 )
1785
- goto st78;
1864
+ goto st80;
1786
1865
  } else if ( (*p) > 90 ) {
1787
1866
  if ( 97 <= (*p) && (*p) <= 122 )
1788
- goto st78;
1867
+ goto st80;
1789
1868
  } else
1790
- goto st78;
1791
- goto tr120;
1792
- st77:
1869
+ goto st80;
1870
+ goto tr125;
1871
+ st79:
1793
1872
  if ( ++p == pe )
1794
- goto _test_eof77;
1795
- case 77:
1873
+ goto _test_eof79;
1874
+ case 79:
1796
1875
  if ( (*p) == 10 )
1797
- goto tr121;
1798
- goto tr127;
1799
- st78:
1876
+ goto tr126;
1877
+ goto tr132;
1878
+ st80:
1800
1879
  if ( ++p == pe )
1801
- goto _test_eof78;
1802
- case 78:
1880
+ goto _test_eof80;
1881
+ case 80:
1803
1882
  switch( (*p) ) {
1804
- case 45: goto st78;
1805
- case 58: goto tr129;
1806
- case 95: goto st78;
1883
+ case 45: goto st80;
1884
+ case 58: goto tr134;
1885
+ case 95: goto st80;
1807
1886
  }
1808
1887
  if ( (*p) < 65 ) {
1809
1888
  if ( 48 <= (*p) && (*p) <= 57 )
1810
- goto st78;
1889
+ goto st80;
1811
1890
  } else if ( (*p) > 90 ) {
1812
1891
  if ( 97 <= (*p) && (*p) <= 122 )
1813
- goto st78;
1892
+ goto st80;
1814
1893
  } else
1815
- goto st78;
1816
- goto tr128;
1817
- st79:
1894
+ goto st80;
1895
+ goto tr133;
1896
+ st81:
1818
1897
  if ( ++p == pe )
1819
- goto _test_eof79;
1820
- case 79:
1898
+ goto _test_eof81;
1899
+ case 81:
1821
1900
  if ( (*p) == 62 )
1822
- goto tr131;
1823
- goto tr130;
1824
- tr134:
1825
- ( state->cs) = 80;
1826
- #line 556 "ext/ragel/base_lexer.rl"
1901
+ goto tr136;
1902
+ goto tr135;
1903
+ tr139:
1904
+ ( state->cs) = 82;
1905
+ #line 575 "ext/ragel/base_lexer.rl"
1827
1906
  {te = p;p--;{
1828
1907
  callback(id_on_text, data, encoding, ts, te);
1829
1908
 
@@ -1837,9 +1916,9 @@ tr134:
1837
1916
  ( state->cs) = 32;
1838
1917
  }}
1839
1918
  goto _again;
1840
- tr136:
1841
- ( state->cs) = 80;
1842
- #line 570 "ext/ragel/base_lexer.rl"
1919
+ tr141:
1920
+ ( state->cs) = 82;
1921
+ #line 589 "ext/ragel/base_lexer.rl"
1843
1922
  {te = p+1;{
1844
1923
  callback(id_on_text, data, encoding, ts, mark);
1845
1924
 
@@ -1856,9 +1935,9 @@ tr136:
1856
1935
  ( state->cs) = 32;
1857
1936
  }}
1858
1937
  goto _again;
1859
- tr137:
1860
- ( state->cs) = 80;
1861
- #line 556 "ext/ragel/base_lexer.rl"
1938
+ tr142:
1939
+ ( state->cs) = 82;
1940
+ #line 575 "ext/ragel/base_lexer.rl"
1862
1941
  {te = p+1;{
1863
1942
  callback(id_on_text, data, encoding, ts, te);
1864
1943
 
@@ -1872,92 +1951,92 @@ tr137:
1872
1951
  ( state->cs) = 32;
1873
1952
  }}
1874
1953
  goto _again;
1875
- st80:
1954
+ st82:
1876
1955
  #line 1 "NONE"
1877
1956
  {ts = 0;}
1878
1957
  if ( ++p == pe )
1879
- goto _test_eof80;
1880
- case 80:
1958
+ goto _test_eof82;
1959
+ case 82:
1881
1960
  #line 1 "NONE"
1882
1961
  {ts = p;}
1883
- #line 1884 "ext/c/lexer.c"
1962
+ #line 1963 "ext/c/lexer.c"
1884
1963
  if ( (*p) == 60 )
1885
- goto tr133;
1886
- goto tr132;
1887
- tr132:
1964
+ goto tr138;
1965
+ goto tr137;
1966
+ tr137:
1888
1967
  #line 56 "ext/ragel/base_lexer.rl"
1889
1968
  {
1890
1969
  if ( (*p) == '\n' ) lines++;
1891
1970
  }
1892
- goto st81;
1893
- st81:
1971
+ goto st83;
1972
+ st83:
1894
1973
  if ( ++p == pe )
1895
- goto _test_eof81;
1896
- case 81:
1897
- #line 1898 "ext/c/lexer.c"
1974
+ goto _test_eof83;
1975
+ case 83:
1976
+ #line 1977 "ext/c/lexer.c"
1898
1977
  if ( (*p) == 60 )
1899
- goto tr135;
1900
- goto tr132;
1901
- tr135:
1978
+ goto tr140;
1979
+ goto tr137;
1980
+ tr140:
1902
1981
  #line 56 "ext/ragel/base_lexer.rl"
1903
1982
  {
1904
1983
  if ( (*p) == '\n' ) lines++;
1905
1984
  }
1906
- #line 570 "ext/ragel/base_lexer.rl"
1985
+ #line 589 "ext/ragel/base_lexer.rl"
1907
1986
  { mark = p; }
1908
- goto st82;
1909
- st82:
1987
+ goto st84;
1988
+ st84:
1910
1989
  if ( ++p == pe )
1911
- goto _test_eof82;
1912
- case 82:
1913
- #line 1914 "ext/c/lexer.c"
1990
+ goto _test_eof84;
1991
+ case 84:
1992
+ #line 1993 "ext/c/lexer.c"
1914
1993
  switch( (*p) ) {
1915
- case 33: goto tr136;
1916
- case 45: goto tr136;
1917
- case 60: goto tr135;
1918
- case 63: goto tr136;
1919
- case 95: goto tr136;
1994
+ case 33: goto tr141;
1995
+ case 45: goto tr141;
1996
+ case 60: goto tr140;
1997
+ case 63: goto tr141;
1998
+ case 95: goto tr141;
1920
1999
  }
1921
2000
  if ( (*p) < 65 ) {
1922
2001
  if ( 47 <= (*p) && (*p) <= 57 )
1923
- goto tr136;
2002
+ goto tr141;
1924
2003
  } else if ( (*p) > 90 ) {
1925
2004
  if ( 97 <= (*p) && (*p) <= 122 )
1926
- goto tr136;
2005
+ goto tr141;
1927
2006
  } else
1928
- goto tr136;
1929
- goto tr132;
1930
- tr133:
2007
+ goto tr141;
2008
+ goto tr137;
2009
+ tr138:
1931
2010
  #line 56 "ext/ragel/base_lexer.rl"
1932
2011
  {
1933
2012
  if ( (*p) == '\n' ) lines++;
1934
2013
  }
1935
- #line 570 "ext/ragel/base_lexer.rl"
2014
+ #line 589 "ext/ragel/base_lexer.rl"
1936
2015
  { mark = p; }
1937
- goto st83;
1938
- st83:
2016
+ goto st85;
2017
+ st85:
1939
2018
  if ( ++p == pe )
1940
- goto _test_eof83;
1941
- case 83:
1942
- #line 1943 "ext/c/lexer.c"
2019
+ goto _test_eof85;
2020
+ case 85:
2021
+ #line 2022 "ext/c/lexer.c"
1943
2022
  switch( (*p) ) {
1944
- case 33: goto tr137;
1945
- case 45: goto tr137;
1946
- case 60: goto tr135;
1947
- case 63: goto tr137;
1948
- case 95: goto tr137;
2023
+ case 33: goto tr142;
2024
+ case 45: goto tr142;
2025
+ case 60: goto tr140;
2026
+ case 63: goto tr142;
2027
+ case 95: goto tr142;
1949
2028
  }
1950
2029
  if ( (*p) < 65 ) {
1951
2030
  if ( 47 <= (*p) && (*p) <= 57 )
1952
- goto tr137;
2031
+ goto tr142;
1953
2032
  } else if ( (*p) > 90 ) {
1954
2033
  if ( 97 <= (*p) && (*p) <= 122 )
1955
- goto tr137;
2034
+ goto tr142;
1956
2035
  } else
1957
- goto tr137;
1958
- goto tr132;
2036
+ goto tr142;
2037
+ goto tr137;
1959
2038
  tr24:
1960
- #line 544 "ext/ragel/base_lexer.rl"
2039
+ #line 563 "ext/ragel/base_lexer.rl"
1961
2040
  {{p = ((te))-1;}{
1962
2041
  callback(id_on_text, data, encoding, ts, te);
1963
2042
 
@@ -1968,9 +2047,9 @@ tr24:
1968
2047
  lines = 0;
1969
2048
  }
1970
2049
  }}
1971
- goto st84;
2050
+ goto st86;
1972
2051
  tr31:
1973
- ( state->cs) = 84;
2052
+ ( state->cs) = 86;
1974
2053
  #line 379 "ext/ragel/base_lexer.rl"
1975
2054
  {te = p+1;{
1976
2055
  callback_simple(id_on_element_end);
@@ -1978,8 +2057,8 @@ tr31:
1978
2057
  ( state->cs) = 32;
1979
2058
  }}
1980
2059
  goto _again;
1981
- tr140:
1982
- #line 544 "ext/ragel/base_lexer.rl"
2060
+ tr145:
2061
+ #line 563 "ext/ragel/base_lexer.rl"
1983
2062
  {te = p;p--;{
1984
2063
  callback(id_on_text, data, encoding, ts, te);
1985
2064
 
@@ -1990,51 +2069,51 @@ tr140:
1990
2069
  lines = 0;
1991
2070
  }
1992
2071
  }}
1993
- goto st84;
1994
- st84:
2072
+ goto st86;
2073
+ st86:
1995
2074
  #line 1 "NONE"
1996
2075
  {ts = 0;}
1997
2076
  if ( ++p == pe )
1998
- goto _test_eof84;
1999
- case 84:
2077
+ goto _test_eof86;
2078
+ case 86:
2000
2079
  #line 1 "NONE"
2001
2080
  {ts = p;}
2002
- #line 2003 "ext/c/lexer.c"
2081
+ #line 2082 "ext/c/lexer.c"
2003
2082
  if ( (*p) == 60 )
2004
- goto tr139;
2005
- goto tr138;
2006
- tr138:
2083
+ goto tr144;
2084
+ goto tr143;
2085
+ tr143:
2007
2086
  #line 56 "ext/ragel/base_lexer.rl"
2008
2087
  {
2009
2088
  if ( (*p) == '\n' ) lines++;
2010
2089
  }
2011
- goto st85;
2012
- st85:
2090
+ goto st87;
2091
+ st87:
2013
2092
  if ( ++p == pe )
2014
- goto _test_eof85;
2015
- case 85:
2016
- #line 2017 "ext/c/lexer.c"
2093
+ goto _test_eof87;
2094
+ case 87:
2095
+ #line 2096 "ext/c/lexer.c"
2017
2096
  if ( (*p) == 60 )
2018
- goto tr140;
2019
- goto tr138;
2020
- tr139:
2097
+ goto tr145;
2098
+ goto tr143;
2099
+ tr144:
2021
2100
  #line 1 "NONE"
2022
2101
  {te = p+1;}
2023
2102
  #line 56 "ext/ragel/base_lexer.rl"
2024
2103
  {
2025
2104
  if ( (*p) == '\n' ) lines++;
2026
2105
  }
2027
- goto st86;
2028
- st86:
2106
+ goto st88;
2107
+ st88:
2029
2108
  if ( ++p == pe )
2030
- goto _test_eof86;
2031
- case 86:
2032
- #line 2033 "ext/c/lexer.c"
2109
+ goto _test_eof88;
2110
+ case 88:
2111
+ #line 2112 "ext/c/lexer.c"
2033
2112
  switch( (*p) ) {
2034
2113
  case 47: goto st19;
2035
- case 60: goto tr142;
2114
+ case 60: goto tr147;
2036
2115
  }
2037
- goto tr140;
2116
+ goto tr145;
2038
2117
  st19:
2039
2118
  if ( ++p == pe )
2040
2119
  goto _test_eof19;
@@ -2084,22 +2163,22 @@ case 25:
2084
2163
  if ( (*p) == 62 )
2085
2164
  goto tr31;
2086
2165
  goto tr24;
2087
- tr142:
2166
+ tr147:
2088
2167
  #line 56 "ext/ragel/base_lexer.rl"
2089
2168
  {
2090
2169
  if ( (*p) == '\n' ) lines++;
2091
2170
  }
2092
- goto st87;
2093
- st87:
2171
+ goto st89;
2172
+ st89:
2094
2173
  if ( ++p == pe )
2095
- goto _test_eof87;
2096
- case 87:
2097
- #line 2098 "ext/c/lexer.c"
2174
+ goto _test_eof89;
2175
+ case 89:
2176
+ #line 2177 "ext/c/lexer.c"
2098
2177
  if ( (*p) == 60 )
2099
- goto tr142;
2100
- goto tr140;
2178
+ goto tr147;
2179
+ goto tr145;
2101
2180
  tr32:
2102
- #line 544 "ext/ragel/base_lexer.rl"
2181
+ #line 563 "ext/ragel/base_lexer.rl"
2103
2182
  {{p = ((te))-1;}{
2104
2183
  callback(id_on_text, data, encoding, ts, te);
2105
2184
 
@@ -2110,9 +2189,9 @@ tr32:
2110
2189
  lines = 0;
2111
2190
  }
2112
2191
  }}
2113
- goto st88;
2192
+ goto st90;
2114
2193
  tr38:
2115
- ( state->cs) = 88;
2194
+ ( state->cs) = 90;
2116
2195
  #line 379 "ext/ragel/base_lexer.rl"
2117
2196
  {te = p+1;{
2118
2197
  callback_simple(id_on_element_end);
@@ -2120,8 +2199,8 @@ tr38:
2120
2199
  ( state->cs) = 32;
2121
2200
  }}
2122
2201
  goto _again;
2123
- tr145:
2124
- #line 544 "ext/ragel/base_lexer.rl"
2202
+ tr150:
2203
+ #line 563 "ext/ragel/base_lexer.rl"
2125
2204
  {te = p;p--;{
2126
2205
  callback(id_on_text, data, encoding, ts, te);
2127
2206
 
@@ -2132,51 +2211,51 @@ tr145:
2132
2211
  lines = 0;
2133
2212
  }
2134
2213
  }}
2135
- goto st88;
2136
- st88:
2214
+ goto st90;
2215
+ st90:
2137
2216
  #line 1 "NONE"
2138
2217
  {ts = 0;}
2139
2218
  if ( ++p == pe )
2140
- goto _test_eof88;
2141
- case 88:
2219
+ goto _test_eof90;
2220
+ case 90:
2142
2221
  #line 1 "NONE"
2143
2222
  {ts = p;}
2144
- #line 2145 "ext/c/lexer.c"
2223
+ #line 2224 "ext/c/lexer.c"
2145
2224
  if ( (*p) == 60 )
2146
- goto tr144;
2147
- goto tr143;
2148
- tr143:
2225
+ goto tr149;
2226
+ goto tr148;
2227
+ tr148:
2149
2228
  #line 56 "ext/ragel/base_lexer.rl"
2150
2229
  {
2151
2230
  if ( (*p) == '\n' ) lines++;
2152
2231
  }
2153
- goto st89;
2154
- st89:
2232
+ goto st91;
2233
+ st91:
2155
2234
  if ( ++p == pe )
2156
- goto _test_eof89;
2157
- case 89:
2158
- #line 2159 "ext/c/lexer.c"
2235
+ goto _test_eof91;
2236
+ case 91:
2237
+ #line 2238 "ext/c/lexer.c"
2159
2238
  if ( (*p) == 60 )
2160
- goto tr145;
2161
- goto tr143;
2162
- tr144:
2239
+ goto tr150;
2240
+ goto tr148;
2241
+ tr149:
2163
2242
  #line 1 "NONE"
2164
2243
  {te = p+1;}
2165
2244
  #line 56 "ext/ragel/base_lexer.rl"
2166
2245
  {
2167
2246
  if ( (*p) == '\n' ) lines++;
2168
2247
  }
2169
- goto st90;
2170
- st90:
2248
+ goto st92;
2249
+ st92:
2171
2250
  if ( ++p == pe )
2172
- goto _test_eof90;
2173
- case 90:
2174
- #line 2175 "ext/c/lexer.c"
2251
+ goto _test_eof92;
2252
+ case 92:
2253
+ #line 2254 "ext/c/lexer.c"
2175
2254
  switch( (*p) ) {
2176
2255
  case 47: goto st26;
2177
- case 60: goto tr147;
2256
+ case 60: goto tr152;
2178
2257
  }
2179
- goto tr145;
2258
+ goto tr150;
2180
2259
  st26:
2181
2260
  if ( ++p == pe )
2182
2261
  goto _test_eof26;
@@ -2219,20 +2298,20 @@ case 31:
2219
2298
  if ( (*p) == 62 )
2220
2299
  goto tr38;
2221
2300
  goto tr32;
2222
- tr147:
2301
+ tr152:
2223
2302
  #line 56 "ext/ragel/base_lexer.rl"
2224
2303
  {
2225
2304
  if ( (*p) == '\n' ) lines++;
2226
2305
  }
2227
- goto st91;
2228
- st91:
2306
+ goto st93;
2307
+ st93:
2229
2308
  if ( ++p == pe )
2230
- goto _test_eof91;
2231
- case 91:
2232
- #line 2233 "ext/c/lexer.c"
2309
+ goto _test_eof93;
2310
+ case 93:
2311
+ #line 2312 "ext/c/lexer.c"
2233
2312
  if ( (*p) == 60 )
2234
- goto tr147;
2235
- goto tr145;
2313
+ goto tr152;
2314
+ goto tr150;
2236
2315
  }
2237
2316
  _test_eof32: ( state->cs) = 32; goto _test_eof;
2238
2317
  _test_eof33: ( state->cs) = 33; goto _test_eof;
@@ -2307,6 +2386,8 @@ case 91:
2307
2386
  _test_eof84: ( state->cs) = 84; goto _test_eof;
2308
2387
  _test_eof85: ( state->cs) = 85; goto _test_eof;
2309
2388
  _test_eof86: ( state->cs) = 86; goto _test_eof;
2389
+ _test_eof87: ( state->cs) = 87; goto _test_eof;
2390
+ _test_eof88: ( state->cs) = 88; goto _test_eof;
2310
2391
  _test_eof19: ( state->cs) = 19; goto _test_eof;
2311
2392
  _test_eof20: ( state->cs) = 20; goto _test_eof;
2312
2393
  _test_eof21: ( state->cs) = 21; goto _test_eof;
@@ -2314,17 +2395,17 @@ case 91:
2314
2395
  _test_eof23: ( state->cs) = 23; goto _test_eof;
2315
2396
  _test_eof24: ( state->cs) = 24; goto _test_eof;
2316
2397
  _test_eof25: ( state->cs) = 25; goto _test_eof;
2317
- _test_eof87: ( state->cs) = 87; goto _test_eof;
2318
- _test_eof88: ( state->cs) = 88; goto _test_eof;
2319
2398
  _test_eof89: ( state->cs) = 89; goto _test_eof;
2320
2399
  _test_eof90: ( state->cs) = 90; goto _test_eof;
2400
+ _test_eof91: ( state->cs) = 91; goto _test_eof;
2401
+ _test_eof92: ( state->cs) = 92; goto _test_eof;
2321
2402
  _test_eof26: ( state->cs) = 26; goto _test_eof;
2322
2403
  _test_eof27: ( state->cs) = 27; goto _test_eof;
2323
2404
  _test_eof28: ( state->cs) = 28; goto _test_eof;
2324
2405
  _test_eof29: ( state->cs) = 29; goto _test_eof;
2325
2406
  _test_eof30: ( state->cs) = 30; goto _test_eof;
2326
2407
  _test_eof31: ( state->cs) = 31; goto _test_eof;
2327
- _test_eof91: ( state->cs) = 91; goto _test_eof;
2408
+ _test_eof93: ( state->cs) = 93; goto _test_eof;
2328
2409
 
2329
2410
  _test_eof: {}
2330
2411
  if ( p == eof )
@@ -2379,14 +2460,15 @@ case 91:
2379
2460
  case 70: goto tr105;
2380
2461
  case 72: goto tr110;
2381
2462
  case 74: goto tr116;
2382
- case 77: goto tr127;
2383
- case 78: goto tr128;
2384
- case 79: goto tr130;
2385
- case 81: goto tr134;
2386
- case 82: goto tr134;
2387
- case 83: goto tr134;
2388
- case 85: goto tr140;
2389
- case 86: goto tr140;
2463
+ case 76: goto tr120;
2464
+ case 79: goto tr132;
2465
+ case 80: goto tr133;
2466
+ case 81: goto tr135;
2467
+ case 83: goto tr139;
2468
+ case 84: goto tr139;
2469
+ case 85: goto tr139;
2470
+ case 87: goto tr145;
2471
+ case 88: goto tr145;
2390
2472
  case 19: goto tr24;
2391
2473
  case 20: goto tr24;
2392
2474
  case 21: goto tr24;
@@ -2394,16 +2476,16 @@ case 91:
2394
2476
  case 23: goto tr24;
2395
2477
  case 24: goto tr24;
2396
2478
  case 25: goto tr24;
2397
- case 87: goto tr140;
2398
2479
  case 89: goto tr145;
2399
- case 90: goto tr145;
2480
+ case 91: goto tr150;
2481
+ case 92: goto tr150;
2400
2482
  case 26: goto tr32;
2401
2483
  case 27: goto tr32;
2402
2484
  case 28: goto tr32;
2403
2485
  case 29: goto tr32;
2404
2486
  case 30: goto tr32;
2405
2487
  case 31: goto tr32;
2406
- case 91: goto tr145;
2488
+ case 93: goto tr150;
2407
2489
  }
2408
2490
  }
2409
2491
 
@@ -2466,7 +2548,7 @@ void Init_liboga_xml_lexer()
2466
2548
  id_advance_line = rb_intern("advance_line");
2467
2549
  id_html_script_p = rb_intern("html_script?");
2468
2550
  id_html_style_p = rb_intern("html_style?");
2469
- id_html = rb_intern("html");
2551
+ id_html_p = rb_intern("html?");
2470
2552
 
2471
2553
  rb_define_method(cLexer, "advance_native", oga_xml_lexer_advance, 1);
2472
2554
  rb_define_method(cLexer, "reset_native", oga_xml_lexer_reset, 0);