github-linguist 7.20.0 → 7.22.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/ext/linguist/lex.linguist_yy.c +584 -498
  3. data/ext/linguist/lex.linguist_yy.h +2 -3
  4. data/ext/linguist/tokenizer.l +52 -15
  5. data/grammars/source.abap.json +1 -1
  6. data/grammars/source.abl.json +1 -1
  7. data/grammars/source.astro.json +1 -1
  8. data/grammars/source.ats.json +1 -1
  9. data/grammars/source.ballerina.json +1 -1
  10. data/grammars/source.bms.json +1 -1
  11. data/grammars/source.brs.json +1 -0
  12. data/grammars/source.cairo.json +1 -1
  13. data/grammars/source.cds.json +1 -0
  14. data/grammars/source.clarion.json +1 -1
  15. data/grammars/source.cobol.json +1 -1
  16. data/grammars/source.css.json +1 -1
  17. data/grammars/source.csswg.json +1 -0
  18. data/grammars/source.curlrc.json +1 -1
  19. data/grammars/source.curry.json +1 -1
  20. data/grammars/source.denizenscript.json +1 -1
  21. data/grammars/source.ditroff.json +1 -1
  22. data/grammars/source.fsharp.json +1 -1
  23. data/grammars/source.gcode.json +1 -1
  24. data/grammars/source.gdresource.json +1 -0
  25. data/grammars/source.gdscript.json +1 -1
  26. data/grammars/source.gdshader.json +1 -0
  27. data/grammars/source.git-revlist.json +1 -0
  28. data/grammars/source.hack.json +1 -1
  29. data/grammars/source.hlasm.json +1 -1
  30. data/grammars/source.hx.json +1 -1
  31. data/grammars/source.icurry.json +1 -1
  32. data/grammars/source.jsligo.json +1 -0
  33. data/grammars/source.json.json +1 -1
  34. data/grammars/source.julia.json +1 -1
  35. data/grammars/source.livescript.json +1 -1
  36. data/grammars/source.miniyaml.json +1 -1
  37. data/grammars/source.mlir.json +1 -1
  38. data/grammars/source.mo.json +1 -1
  39. data/grammars/source.move.json +1 -0
  40. data/grammars/source.nix.json +1 -1
  41. data/grammars/source.pony.json +1 -1
  42. data/grammars/source.portugol.json +1 -0
  43. data/grammars/source.rego.json +1 -1
  44. data/grammars/source.renpy.json +1 -1
  45. data/grammars/source.rescript.json +1 -1
  46. data/grammars/source.rpgle.json +1 -1
  47. data/grammars/source.rsc.json +1 -0
  48. data/grammars/source.scala.json +1 -1
  49. data/grammars/source.solidity.json +1 -1
  50. data/grammars/source.sqf.json +1 -1
  51. data/grammars/source.star.json +1 -0
  52. data/grammars/source.stl.json +1 -0
  53. data/grammars/source.svelte.json +1 -1
  54. data/grammars/source.ts.json +1 -1
  55. data/grammars/source.tsx.json +1 -1
  56. data/grammars/source.v.json +1 -1
  57. data/grammars/source.velocity.html.json +1 -0
  58. data/grammars/source.velocity.json +1 -0
  59. data/grammars/source.whiley.json +1 -0
  60. data/grammars/source.wren.json +1 -0
  61. data/grammars/source.wsd.json +1 -1
  62. data/grammars/source.yul.json +1 -0
  63. data/grammars/text.hash-commented.json +1 -0
  64. data/grammars/text.html.statamic.json +1 -0
  65. data/grammars/text.srt.json +1 -1
  66. data/grammars/text.vtt.json +1 -0
  67. data/grammars/version +1 -1
  68. data/lib/linguist/VERSION +1 -1
  69. data/lib/linguist/blob_helper.rb +2 -2
  70. data/lib/linguist/generic.yml +1 -0
  71. data/lib/linguist/heuristics.yml +22 -1
  72. data/lib/linguist/language.rb +3 -4
  73. data/lib/linguist/languages.json +1 -1
  74. data/lib/linguist/languages.yml +218 -4
  75. data/lib/linguist/samples.json +1 -1
  76. data/lib/linguist/vendor.yml +4 -1
  77. metadata +30 -13
  78. data/grammars/source.brightauthorproject.json +0 -1
  79. data/grammars/source.brightscript.json +0 -1
  80. data/grammars/source.vtt.json +0 -1
@@ -541,13 +541,12 @@ static void yynoreturn yy_fatal_error ( const char* msg , yyscan_t yyscanner );
541
541
  */
542
542
  #define YY_DO_BEFORE_ACTION \
543
543
  yyg->yytext_ptr = yy_bp; \
544
- yyg->yytext_ptr -= yyg->yy_more_len; \
545
- yyleng = (int) (yy_cp - yyg->yytext_ptr); \
544
+ yyleng = (int) (yy_cp - yy_bp); \
546
545
  yyg->yy_hold_char = *yy_cp; \
547
546
  *yy_cp = '\0'; \
548
547
  yyg->yy_c_buf_p = yy_cp;
549
- #define YY_NUM_RULES 45
550
- #define YY_END_OF_BUFFER 46
548
+ #define YY_NUM_RULES 79
549
+ #define YY_END_OF_BUFFER 80
551
550
  /* This struct is not used in this scanner,
552
551
  but its presence is necessary. */
553
552
  struct yy_trans_info
@@ -555,64 +554,36 @@ struct yy_trans_info
555
554
  flex_int32_t yy_verify;
556
555
  flex_int32_t yy_nxt;
557
556
  };
558
- static const flex_int16_t yy_acclist[262] =
557
+ static const flex_int16_t yy_accept[255] =
559
558
  { 0,
560
- 46, 44, 45, 42, 44, 45,16422, 31, 44, 45,
561
- 42, 44, 45,16422, 32, 44, 45, 36, 44, 45,
562
- 36, 44, 45, 43, 44, 45, 33, 34, 44, 45,
563
- 33, 34, 44, 45, 43, 44, 45, 34, 44, 45,
564
- 36, 44, 45, 34, 42, 44, 45,16422, 36, 44,
565
- 45, 44, 45, 31, 44, 45, 42, 44, 45,16422,
566
- 42, 44, 45,16422, 32, 44, 45, 42, 44, 45,
567
- 16422, 42, 44, 45,16422, 43, 44, 45, 42, 44,
568
- 45,16422, 22, 45, 22, 45, 22, 45, 22, 45,
569
- 22, 45, 22, 45, 22, 45, 22, 45, 45, 42,
570
-
571
- 45,16422, 43, 45, 37, 42,16422, 30, 34, 37,
572
- 34, 42,16422, 30, 35, 18, 39, 15, 33, 33,
573
- 34, 34, 34, 33, 34, 33, 34, 34, 17, 8,
574
- 8, 3, 37, 3, 37, 42,16422, 42,16422, 7,
575
- 37, 7, 37, 42,16422, 42,16422, 37, 42,16422,
576
- 34, 37, 5, 9, 37, 9, 37, 42,16422, 23,
577
- 25, 26, 8230, 19, 20, 14, 13, 41, 33, 33,
578
- 33, 33, 34, 33, 34, 3, 3, 7, 7, 5,
579
- 9, 9, 8, 3, 37, 2, 37, 2, 37, 2,
580
- 42,16422, 2, 37, 7, 11, 6, 37, 6, 37,
581
-
582
- 10, 37, 34, 5, 39, 5, 39, 5, 5, 5,
583
- 41, 5, 5, 9, 24, 27, 28, 29, 12, 33,
584
- 33, 33, 34, 33, 33, 34, 33, 34, 33, 34,
585
- 16, 6, 6, 5, 2, 2, 2, 2, 11, 11,
586
- 6, 10, 10, 10, 21, 4, 5, 4, 5, 5,
587
- 40, 33, 33, 33, 2, 4, 5, 5, 5, 40,
588
- 1
589
- } ;
590
-
591
- static const flex_int16_t yy_accept[211] =
592
- { 0,
593
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
594
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
595
- 4, 8, 11, 15, 18, 21, 24, 27, 31, 35,
596
- 38, 41, 44, 49, 52, 54, 57, 61, 65, 68,
597
- 72, 76, 79, 83, 85, 87, 89, 91, 93, 95,
598
- 97, 99, 100, 103, 105, 106, 108, 108, 108, 109,
599
- 111, 114, 115, 116, 117, 118, 119, 119, 119, 120,
600
- 122, 123, 124, 126, 128, 129, 129, 130, 130, 130,
601
- 130, 130, 130, 130, 130, 131, 132, 134, 136, 138,
602
- 140, 142, 144, 146, 146, 146, 148, 149, 151, 153,
603
-
604
- 154, 156, 158, 160, 161, 161, 162, 163, 163, 163,
605
- 163, 164, 164, 165, 166, 167, 168, 169, 169, 169,
606
- 170, 171, 172, 174, 176, 176, 177, 178, 179, 180,
607
- 180, 181, 182, 183, 184, 185, 186, 187, 188, 190,
608
- 193, 195, 196, 197, 199, 201, 201, 201, 203, 204,
609
- 206, 208, 209, 210, 212, 213, 214, 215, 216, 217,
610
- 218, 219, 219, 220, 220, 221, 222, 224, 225, 227,
611
- 229, 231, 232, 233, 234, 235, 235, 236, 236, 237,
612
- 238, 238, 239, 240, 241, 242, 243, 244, 245, 246,
613
- 248, 250, 251, 252, 253, 254, 255, 255, 256, 258,
614
-
615
- 259, 259, 259, 261, 261, 261, 261, 262, 262, 262
559
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
560
+ 0, 0, 0, 0, 0, 0, 80, 78, 60, 32,
561
+ 61, 62, 63, 64, 33, 39, 39, 65, 66, 67,
562
+ 59, 68, 52, 34, 34, 69, 70, 52, 49, 52,
563
+ 71, 72, 35, 41, 73, 41, 74, 75, 40, 76,
564
+ 40, 77, 78, 32, 61, 62, 63, 33, 59, 68,
565
+ 52, 70, 23, 23, 23, 23, 23, 23, 23, 23,
566
+ 60, 48, 51, 54, 31, 61, 35, 62, 42, 0,
567
+ 42, 63, 53, 64, 44, 45, 31, 39, 36, 19,
568
+ 0, 0, 39, 65, 66, 67, 59, 46, 56, 57,
569
+
570
+ 68, 16, 52, 34, 34, 35, 34, 34, 35, 55,
571
+ 69, 70, 50, 50, 44, 47, 52, 52, 49, 52,
572
+ 49, 44, 71, 72, 0, 41, 38, 73, 41, 74,
573
+ 75, 18, 0, 40, 37, 76, 40, 77, 0, 0,
574
+ 0, 0, 0, 0, 0, 8, 8, 3, 3, 0,
575
+ 61, 0, 7, 7, 63, 0, 0, 59, 0, 0,
576
+ 35, 5, 9, 9, 70, 24, 0, 26, 27, 0,
577
+ 0, 0, 20, 42, 21, 0, 58, 56, 57, 15,
578
+ 14, 0, 34, 34, 34, 34, 34, 0, 0, 0,
579
+ 0, 5, 8, 3, 0, 2, 0, 2, 2, 12,
580
+
581
+ 7, 11, 6, 6, 10, 35, 5, 5, 5, 5,
582
+ 9, 25, 28, 29, 30, 0, 13, 34, 34, 34,
583
+ 34, 34, 34, 34, 17, 0, 0, 0, 2, 12,
584
+ 12, 11, 11, 6, 10, 10, 22, 4, 4, 43,
585
+ 34, 34, 34, 0, 2, 4, 0, 0, 0, 0,
586
+ 0, 1, 0, 0
616
587
  } ;
617
588
 
618
589
  static const YY_CHAR yy_ec[256] =
@@ -620,17 +591,17 @@ static const YY_CHAR yy_ec[256] =
620
591
  1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
621
592
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
622
593
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
623
- 1, 4, 5, 6, 7, 8, 9, 8, 10, 11,
624
- 12, 13, 14, 8, 15, 16, 17, 18, 19, 19,
625
- 19, 19, 19, 19, 19, 19, 19, 8, 20, 21,
626
- 22, 23, 8, 24, 25, 25, 25, 25, 26, 27,
627
- 28, 28, 28, 28, 28, 29, 28, 28, 28, 28,
628
- 28, 28, 28, 28, 30, 28, 28, 28, 28, 28,
629
- 31, 32, 33, 8, 34, 8, 25, 25, 25, 25,
630
-
631
- 35, 27, 36, 28, 37, 28, 28, 29, 28, 38,
632
- 28, 28, 28, 28, 28, 28, 30, 39, 28, 40,
633
- 28, 28, 41, 8, 42, 8, 1, 1, 1, 1,
594
+ 1, 4, 5, 6, 7, 8, 9, 10, 11, 12,
595
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 21,
596
+ 21, 21, 21, 21, 21, 21, 21, 22, 23, 24,
597
+ 25, 26, 27, 28, 29, 29, 29, 29, 30, 31,
598
+ 32, 32, 32, 32, 32, 33, 32, 32, 32, 32,
599
+ 32, 32, 32, 32, 34, 32, 32, 32, 32, 32,
600
+ 35, 36, 37, 38, 32, 39, 29, 29, 29, 29,
601
+
602
+ 40, 31, 41, 32, 42, 32, 32, 33, 32, 43,
603
+ 32, 32, 32, 32, 32, 32, 34, 44, 32, 45,
604
+ 32, 32, 46, 47, 48, 49, 1, 1, 1, 1,
634
605
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
635
606
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
636
607
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -647,256 +618,243 @@ static const YY_CHAR yy_ec[256] =
647
618
  1, 1, 1, 1, 1
648
619
  } ;
649
620
 
650
- static const YY_CHAR yy_meta[43] =
621
+ static const YY_CHAR yy_meta[50] =
651
622
  { 0,
652
- 1, 2, 3, 2, 4, 1, 4, 4, 4, 1,
653
- 1, 1, 1, 4, 4, 4, 5, 6, 6, 4,
654
- 1, 4, 4, 4, 6, 6, 6, 6, 6, 6,
655
- 1, 4, 1, 7, 6, 6, 6, 6, 6, 6,
656
- 1, 1
623
+ 1, 2, 3, 2, 4, 1, 5, 1, 4, 1,
624
+ 1, 1, 1, 1, 1, 1, 1, 1, 6, 7,
625
+ 7, 1, 1, 4, 1, 4, 4, 4, 7, 7,
626
+ 7, 7, 7, 7, 1, 1, 1, 1, 1, 7,
627
+ 7, 7, 7, 7, 7, 1, 1, 1, 1
657
628
  } ;
658
629
 
659
- static const flex_int16_t yy_base[228] =
630
+ static const flex_int16_t yy_base[272] =
660
631
  { 0,
661
- 0, 41, 521, 520, 517, 516, 515, 514, 514, 505,
662
- 511, 510, 499, 498, 490, 489, 57, 87, 504, 680,
663
- 117, 497, 151, 492, 40, 680, 42, 178, 461, 206,
664
- 0, 467, 0, 34, 226, 79, 83, 244, 65, 114,
665
- 110, 208, 235, 680, 482, 483, 455, 484, 489, 484,
666
- 477, 680, 141, 256, 680, 233, 479, 486, 484, 0,
667
- 0, 478, 680, 680, 680, 41, 258, 267, 273, 445,
668
- 0, 84, 86, 455, 279, 468, 680, 0, 102, 195,
669
- 278, 467, 462, 206, 680, 0, 680, 0, 313, 309,
670
- 680, 0, 0, 218, 469, 292, 305, 316, 438, 353,
671
-
672
- 680, 0, 324, 680, 448, 680, 680, 462, 455, 461,
673
- 680, 448, 680, 680, 680, 445, 680, 446, 113, 119,
674
- 427, 378, 417, 392, 397, 680, 0, 680, 0, 132,
675
- 251, 680, 0, 0, 0, 396, 431, 392, 227, 399,
676
- 386, 0, 403, 680, 0, 421, 396, 333, 326, 318,
677
- 680, 197, 307, 280, 269, 55, 0, 680, 680, 680,
678
- 680, 255, 680, 219, 202, 410, 0, 451, 0, 271,
679
- 0, 680, 680, 0, 680, 322, 211, 178, 310, 403,
680
- 228, 391, 140, 680, 0, 117, 113, 680, 680, 680,
681
- 90, 331, 680, 680, 279, 0, 273, 438, 81, 440,
682
-
683
- 419, 485, 41, 443, 450, 418, 524, 455, 680, 564,
684
- 571, 578, 585, 586, 593, 600, 607, 614, 621, 627,
685
- 630, 637, 644, 651, 658, 665, 672
632
+ 0, 48, 598, 597, 593, 592, 591, 590, 592, 591,
633
+ 566, 543, 524, 519, 511, 510, 522, 613, 48, 509,
634
+ 501, 56, 51, 59, 482, 68, 479, 37, 63, 475,
635
+ 73, 86, 89, 98, 445, 95, 466, 139, 85, 126,
636
+ 95, 51, 475, 52, 445, 443, 58, 439, 107, 137,
637
+ 429, 108, 183, 165, 169, 471, 179, 175, 182, 176,
638
+ 195, 190, 613, 456, 457, 425, 459, 465, 459, 451,
639
+ 67, 443, 613, 613, 461, 459, 458, 456, 451, 425,
640
+ 415, 451, 434, 447, 423, 613, 437, 147, 434, 613,
641
+ 428, 423, 425, 423, 421, 418, 109, 407, 80, 176,
642
+
643
+ 414, 156, 191, 204, 386, 216, 209, 168, 225, 613,
644
+ 408, 406, 411, 613, 410, 409, 217, 233, 171, 242,
645
+ 202, 613, 398, 396, 405, 192, 385, 385, 383, 381,
646
+ 379, 613, 399, 201, 368, 368, 365, 361, 0, 259,
647
+ 266, 268, 392, 389, 271, 613, 0, 613, 0, 276,
648
+ 278, 403, 613, 0, 280, 284, 400, 287, 296, 397,
649
+ 223, 298, 613, 0, 289, 613, 373, 613, 613, 392,
650
+ 386, 391, 613, 353, 613, 369, 613, 613, 613, 613,
651
+ 367, 236, 274, 352, 288, 269, 315, 367, 365, 355,
652
+ 307, 320, 0, 0, 348, 324, 324, 325, 299, 331,
653
+
654
+ 0, 312, 613, 0, 303, 311, 296, 613, 327, 351,
655
+ 0, 613, 613, 613, 613, 274, 613, 246, 320, 241,
656
+ 371, 0, 322, 0, 613, 161, 133, 220, 110, 134,
657
+ 613, 120, 613, 0, 102, 613, 613, 613, 72, 613,
658
+ 613, 346, 0, 319, 362, 58, 352, 410, 374, 370,
659
+ 377, 454, 378, 613, 499, 502, 506, 512, 519, 525,
660
+ 532, 539, 546, 548, 555, 562, 569, 576, 583, 590,
661
+ 597
686
662
  } ;
687
663
 
688
- static const flex_int16_t yy_def[228] =
664
+ static const flex_int16_t yy_def[272] =
689
665
  { 0,
690
- 209, 1, 210, 210, 210, 210, 210, 210, 210, 210,
691
- 210, 210, 210, 210, 210, 210, 211, 211, 209, 209,
692
- 212, 209, 209, 209, 209, 209, 213, 209, 28, 213,
693
- 214, 209, 23, 209, 209, 209, 23, 212, 209, 38,
694
- 23, 213, 38, 209, 209, 209, 209, 209, 209, 209,
695
- 209, 209, 38, 213, 209, 38, 209, 209, 209, 214,
696
- 23, 209, 209, 209, 209, 209, 213, 213, 209, 28,
697
- 214, 214, 214, 214, 214, 209, 209, 35, 209, 209,
698
- 209, 209, 209, 209, 209, 215, 209, 216, 23, 38,
699
- 209, 217, 38, 209, 209, 38, 209, 38, 214, 209,
700
-
701
- 209, 218, 38, 209, 209, 209, 209, 209, 209, 209,
702
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
703
- 209, 209, 214, 28, 209, 209, 216, 209, 217, 209,
704
- 219, 209, 218, 215, 216, 220, 220, 221, 137, 89,
705
- 137, 217, 222, 209, 223, 209, 209, 224, 214, 219,
706
- 209, 219, 219, 219, 100, 100, 218, 209, 209, 209,
707
- 209, 209, 209, 209, 209, 209, 214, 209, 124, 124,
708
- 124, 209, 209, 223, 209, 137, 137, 221, 137, 137,
709
- 221, 137, 222, 209, 223, 224, 224, 209, 209, 209,
710
- 225, 219, 209, 209, 168, 168, 221, 137, 225, 219,
711
-
712
- 221, 226, 219, 221, 226, 227, 226, 227, 0, 209,
713
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
714
- 209, 209, 209, 209, 209, 209, 209
666
+ 254, 1, 255, 255, 255, 255, 255, 255, 255, 255,
667
+ 255, 255, 255, 255, 255, 255, 254, 254, 254, 254,
668
+ 256, 256, 254, 254, 254, 254, 254, 254, 254, 254,
669
+ 254, 256, 254, 254, 34, 254, 254, 254, 254, 254,
670
+ 254, 256, 256, 254, 254, 254, 254, 254, 254, 254,
671
+ 254, 254, 254, 254, 256, 22, 254, 254, 254, 32,
672
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
673
+ 254, 254, 254, 254, 254, 254, 256, 254, 254, 254,
674
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
675
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
676
+
677
+ 254, 254, 254, 254, 34, 256, 256, 256, 256, 254,
678
+ 254, 254, 254, 254, 254, 254, 257, 254, 254, 254,
679
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
680
+ 254, 254, 254, 254, 254, 254, 254, 254, 53, 254,
681
+ 254, 254, 254, 254, 254, 254, 258, 254, 259, 260,
682
+ 254, 254, 254, 261, 254, 254, 254, 254, 254, 254,
683
+ 256, 262, 254, 263, 254, 254, 254, 254, 254, 254,
684
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
685
+ 254, 254, 254, 254, 254, 256, 254, 254, 254, 254,
686
+ 254, 262, 258, 259, 260, 195, 264, 195, 198, 265,
687
+
688
+ 261, 266, 254, 267, 268, 256, 262, 254, 262, 262,
689
+ 263, 254, 254, 254, 254, 254, 254, 254, 254, 256,
690
+ 254, 187, 187, 187, 254, 254, 254, 264, 198, 265,
691
+ 254, 266, 254, 267, 268, 254, 254, 254, 269, 254,
692
+ 254, 221, 221, 264, 198, 269, 264, 270, 264, 270,
693
+ 271, 270, 271, 0, 254, 254, 254, 254, 254, 254,
694
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
695
+ 254
715
696
  } ;
716
697
 
717
- static const flex_int16_t yy_nxt[723] =
698
+ static const flex_int16_t yy_nxt[663] =
718
699
  { 0,
719
- 20, 20, 20, 20, 21, 22, 23, 21, 21, 24,
720
- 25, 26, 21, 21, 21, 23, 27, 28, 29, 21,
721
- 30, 21, 21, 23, 31, 31, 31, 31, 31, 31,
722
- 32, 21, 26, 33, 31, 31, 31, 31, 31, 31,
723
- 34, 26, 35, 175, 35, 115, 36, 37, 77, 38,
724
- 39, 63, 64, 116, 66, 40, 41, 42, 67, 192,
725
- 43, 53, 68, 53, 53, 53, 94, 153, 94, 53,
726
- 53, 53, 53, 54, 62, 63, 53, 54, 53, 53,
727
- 53, 85, 86, 175, 59, 87, 88, 89, 53, 90,
728
- 53, 53, 175, 53, 53, 53, 95, 122, 122, 53,
729
-
730
- 53, 53, 53, 54, 85, 86, 53, 54, 53, 53,
731
- 53, 97, 73, 97, 73, 209, 55, 55, 53, 188,
732
- 53, 56, 56, 56, 56, 56, 122, 122, 96, 56,
733
- 56, 56, 56, 57, 173, 174, 56, 58, 56, 56,
734
- 56, 98, 209, 55, 55, 120, 99, 120, 56, 56,
735
- 56, 55, 55, 55, 55, 56, 55, 56, 56, 56,
736
- 55, 55, 55, 56, 56, 56, 56, 57, 60, 60,
737
- 56, 58, 56, 56, 56, 60, 60, 60, 60, 60,
738
- 60, 55, 56, 55, 61, 60, 60, 60, 60, 60,
739
- 60, 55, 55, 69, 181, 70, 70, 126, 127, 190,
740
-
741
- 191, 80, 71, 72, 73, 71, 73, 74, 132, 133,
742
- 76, 71, 72, 71, 71, 71, 71, 75, 209, 94,
743
- 66, 94, 67, 209, 100, 84, 68, 78, 68, 78,
744
- 194, 79, 80, 193, 81, 55, 55, 101, 102, 209,
745
- 82, 56, 83, 56, 181, 84, 91, 92, 56, 95,
746
- 56, 56, 93, 175, 103, 152, 56, 56, 56, 56,
747
- 57, 179, 197, 56, 58, 56, 56, 56, 209, 111,
748
- 117, 118, 67, 153, 67, 56, 68, 56, 68, 209,
749
- 128, 129, 175, 67, 122, 122, 81, 68, 69, 181,
750
- 69, 69, 122, 122, 144, 145, 124, 124, 119, 120,
751
-
752
- 56, 120, 121, 124, 124, 124, 146, 119, 146, 175,
753
- 201, 87, 88, 124, 136, 90, 136, 56, 55, 55,
754
- 175, 148, 209, 176, 56, 176, 101, 102, 189, 137,
755
- 138, 138, 56, 175, 209, 188, 147, 139, 139, 139,
756
- 139, 139, 139, 103, 179, 200, 140, 141, 139, 139,
757
- 139, 139, 139, 150, 150, 151, 150, 152, 150, 153,
758
- 153, 153, 150, 150, 150, 154, 153, 153, 153, 155,
759
- 150, 150, 153, 156, 153, 153, 153, 150, 150, 150,
760
- 150, 150, 150, 150, 153, 150, 153, 150, 150, 150,
761
- 150, 150, 150, 150, 150, 166, 166, 176, 209, 176,
762
-
763
- 55, 186, 55, 209, 120, 184, 120, 168, 181, 169,
764
- 169, 172, 177, 178, 178, 209, 169, 170, 171, 202,
765
- 179, 202, 146, 182, 146, 179, 170, 166, 166, 198,
766
- 180, 71, 209, 139, 209, 181, 120, 179, 120, 202,
767
- 182, 202, 175, 111, 202, 167, 202, 177, 178, 178,
768
- 209, 209, 147, 209, 203, 165, 202, 204, 202, 181,
769
- 164, 163, 162, 161, 160, 180, 168, 159, 168, 168,
770
- 158, 206, 179, 149, 143, 168, 195, 196, 131, 120,
771
- 121, 130, 125, 123, 71, 195, 202, 114, 202, 113,
772
- 112, 111, 110, 109, 108, 107, 106, 105, 104, 63,
773
-
774
- 71, 62, 59, 209, 51, 51, 206, 50, 50, 207,
775
- 207, 207, 207, 207, 207, 49, 49, 48, 207, 207,
776
- 207, 207, 207, 207, 207, 209, 48, 209, 47, 47,
777
- 46, 46, 45, 45, 209, 209, 209, 209, 209, 209,
778
- 209, 209, 209, 209, 209, 206, 209, 209, 207, 207,
779
- 207, 207, 207, 207, 209, 209, 209, 207, 207, 207,
780
- 207, 207, 207, 207, 44, 44, 44, 44, 44, 44,
781
- 44, 52, 52, 52, 52, 52, 52, 52, 55, 55,
782
- 55, 55, 55, 55, 55, 65, 65, 65, 209, 65,
783
- 65, 71, 71, 134, 134, 209, 134, 134, 134, 134,
784
-
785
- 135, 135, 209, 135, 135, 135, 135, 142, 142, 209,
786
- 142, 142, 142, 142, 157, 157, 209, 157, 157, 157,
787
- 157, 153, 153, 153, 153, 153, 153, 153, 179, 209,
788
- 209, 179, 179, 179, 178, 178, 178, 183, 183, 183,
789
- 183, 183, 183, 183, 185, 185, 209, 185, 185, 185,
790
- 185, 187, 187, 187, 187, 187, 187, 187, 199, 199,
791
- 199, 199, 199, 199, 199, 205, 205, 205, 205, 205,
792
- 205, 205, 208, 208, 208, 208, 208, 208, 208, 19,
793
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
794
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
795
-
796
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
797
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
798
- 209, 209
700
+ 18, 18, 18, 18, 19, 20, 21, 22, 23, 24,
701
+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
702
+ 35, 36, 37, 38, 39, 40, 41, 42, 43, 43,
703
+ 43, 43, 43, 43, 44, 45, 46, 47, 48, 43,
704
+ 43, 43, 43, 43, 43, 49, 50, 51, 52, 53,
705
+ 94, 53, 71, 54, 55, 56, 57, 254, 58, 82,
706
+ 208, 83, 254, 78, 59, 60, 61, 79, 84, 125,
707
+ 62, 71, 72, 73, 208, 83, 73, 95, 124, 88,
708
+ 89, 90, 83, 83, 85, 91, 126, 83, 127, 97,
709
+ 80, 72, 254, 99, 92, 130, 74, 83, 98, 99,
710
+
711
+ 100, 81, 102, 101, 254, 86, 178, 103, 121, 119,
712
+ 121, 110, 103, 83, 103, 104, 111, 105, 105, 83,
713
+ 73, 123, 254, 132, 133, 97, 77, 106, 107, 77,
714
+ 107, 108, 83, 74, 98, 122, 254, 106, 77, 77,
715
+ 77, 77, 109, 113, 103, 114, 86, 114, 115, 120,
716
+ 119, 120, 134, 245, 135, 116, 138, 117, 88, 89,
717
+ 180, 83, 118, 119, 120, 114, 114, 146, 147, 181,
718
+ 75, 148, 149, 150, 254, 151, 156, 159, 156, 159,
719
+ 240, 153, 154, 136, 139, 87, 139, 155, 140, 141,
720
+ 100, 142, 163, 164, 121, 119, 121, 240, 158, 143,
721
+
722
+ 186, 144, 179, 83, 73, 145, 83, 98, 102, 103,
723
+ 157, 160, 165, 162, 103, 254, 103, 161, 103, 83,
724
+ 103, 104, 254, 104, 104, 121, 126, 121, 127, 254,
725
+ 185, 254, 185, 182, 183, 103, 183, 184, 228, 107,
726
+ 103, 107, 103, 182, 187, 187, 134, 254, 135, 116,
727
+ 185, 103, 185, 187, 187, 187, 118, 119, 120, 244,
728
+ 103, 146, 147, 206, 187, 120, 119, 120, 148, 149,
729
+ 153, 154, 141, 163, 164, 254, 142, 195, 241, 195,
730
+ 148, 149, 153, 154, 151, 156, 240, 156, 155, 203,
731
+ 204, 163, 164, 145, 196, 197, 197, 159, 208, 159,
732
+
733
+ 208, 220, 209, 97, 183, 236, 183, 219, 219, 203,
734
+ 204, 165, 98, 237, 233, 199, 210, 254, 183, 157,
735
+ 183, 210, 208, 210, 209, 254, 254, 254, 254, 238,
736
+ 239, 160, 221, 231, 222, 222, 185, 228, 185, 219,
737
+ 219, 229, 228, 222, 223, 224, 77, 107, 108, 195,
738
+ 183, 195, 183, 208, 223, 77, 77, 77, 77, 77,
739
+ 185, 247, 185, 248, 198, 248, 196, 197, 197, 210,
740
+ 228, 254, 227, 254, 210, 248, 210, 248, 248, 248,
741
+ 248, 248, 226, 225, 218, 217, 216, 199, 221, 174,
742
+ 221, 221, 228, 215, 251, 249, 214, 213, 212, 221,
743
+
744
+ 242, 243, 205, 183, 184, 202, 200, 192, 191, 138,
745
+ 242, 248, 137, 248, 136, 135, 190, 131, 130, 129,
746
+ 128, 127, 189, 124, 123, 116, 122, 188, 112, 111,
747
+ 77, 101, 98, 96, 251, 95, 94, 93, 252, 252,
748
+ 252, 252, 252, 252, 177, 176, 89, 175, 122, 252,
749
+ 252, 252, 252, 252, 252, 254, 84, 254, 83, 82,
750
+ 81, 174, 79, 78, 254, 76, 173, 72, 172, 171,
751
+ 170, 169, 168, 167, 166, 152, 137, 131, 251, 129,
752
+ 128, 254, 252, 252, 252, 252, 252, 252, 112, 77,
753
+ 96, 93, 87, 252, 252, 252, 252, 252, 252, 63,
754
+
755
+ 63, 63, 63, 63, 63, 63, 77, 76, 77, 114,
756
+ 114, 114, 193, 193, 75, 193, 193, 193, 193, 194,
757
+ 194, 254, 194, 194, 194, 194, 198, 70, 70, 69,
758
+ 198, 198, 201, 201, 69, 201, 201, 201, 201, 207,
759
+ 207, 207, 207, 207, 207, 207, 211, 211, 68, 211,
760
+ 211, 211, 211, 197, 197, 230, 230, 230, 230, 230,
761
+ 230, 230, 232, 232, 232, 232, 232, 232, 232, 234,
762
+ 234, 68, 234, 234, 234, 234, 235, 235, 235, 235,
763
+ 235, 235, 235, 246, 246, 246, 246, 246, 246, 246,
764
+ 250, 250, 250, 250, 250, 250, 250, 253, 253, 253,
765
+
766
+ 253, 253, 253, 253, 67, 67, 66, 66, 65, 65,
767
+ 64, 64, 17, 254, 254, 254, 254, 254, 254, 254,
768
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
769
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
770
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
771
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
772
+ 254, 254
799
773
  } ;
800
774
 
801
- static const flex_int16_t yy_chk[723] =
775
+ static const flex_int16_t yy_chk[663] =
802
776
  { 0,
803
777
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
804
778
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
805
779
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
806
780
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
807
- 1, 1, 2, 203, 2, 66, 2, 2, 34, 2,
808
- 2, 25, 25, 66, 27, 2, 2, 2, 27, 156,
809
- 2, 17, 27, 17, 17, 17, 39, 156, 39, 17,
810
- 17, 17, 17, 17, 39, 34, 17, 17, 17, 17,
811
- 17, 36, 36, 199, 36, 37, 37, 37, 17, 37,
812
- 17, 18, 191, 18, 18, 18, 39, 72, 72, 18,
813
-
814
- 18, 18, 18, 18, 79, 79, 18, 18, 18, 18,
815
- 18, 41, 73, 41, 73, 187, 40, 40, 18, 186,
816
- 18, 21, 40, 21, 21, 21, 119, 119, 40, 21,
817
- 21, 21, 21, 21, 130, 130, 21, 21, 21, 21,
818
- 21, 41, 183, 53, 53, 120, 41, 120, 21, 53,
819
- 21, 23, 23, 23, 23, 23, 23, 23, 23, 23,
820
- 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
821
- 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
822
- 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
823
- 23, 23, 23, 28, 178, 28, 28, 80, 80, 152,
824
-
825
- 152, 80, 28, 28, 28, 28, 28, 28, 84, 84,
826
- 30, 28, 28, 28, 28, 28, 28, 28, 30, 94,
827
- 42, 94, 30, 177, 42, 84, 30, 35, 42, 35,
828
- 165, 35, 35, 164, 35, 56, 56, 43, 43, 139,
829
- 35, 56, 35, 43, 181, 35, 38, 38, 38, 94,
830
- 38, 38, 38, 131, 43, 131, 38, 38, 38, 38,
831
- 38, 139, 181, 38, 38, 38, 38, 38, 54, 162,
832
- 67, 68, 54, 155, 67, 38, 54, 38, 67, 68,
833
- 81, 81, 154, 68, 170, 170, 81, 68, 69, 197,
834
- 69, 69, 195, 195, 96, 96, 75, 75, 69, 69,
835
-
836
- 96, 69, 69, 75, 75, 75, 97, 69, 97, 153,
837
- 197, 90, 90, 75, 89, 90, 89, 90, 98, 98,
838
- 150, 98, 179, 176, 98, 176, 103, 103, 149, 89,
839
- 89, 89, 103, 192, 176, 148, 97, 89, 89, 89,
840
- 89, 89, 89, 103, 179, 192, 89, 89, 89, 89,
841
- 89, 89, 89, 100, 100, 100, 100, 100, 100, 100,
842
- 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
843
- 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
844
- 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
845
- 100, 100, 100, 100, 100, 122, 122, 136, 141, 136,
846
-
847
- 140, 147, 140, 182, 122, 143, 122, 124, 138, 124,
848
- 124, 125, 136, 136, 136, 180, 124, 124, 124, 206,
849
- 141, 206, 146, 141, 146, 182, 124, 166, 166, 182,
850
- 136, 124, 137, 140, 137, 201, 166, 180, 166, 198,
851
- 180, 198, 200, 137, 204, 123, 204, 137, 137, 137,
852
- 198, 205, 146, 205, 200, 121, 208, 201, 208, 204,
853
- 118, 116, 112, 110, 109, 137, 168, 108, 168, 168,
854
- 105, 205, 198, 99, 95, 168, 168, 168, 83, 168,
855
- 168, 82, 76, 74, 70, 168, 202, 62, 202, 59,
856
- 58, 57, 51, 50, 49, 48, 47, 46, 45, 32,
857
-
858
- 29, 24, 22, 19, 16, 15, 202, 14, 13, 202,
859
- 202, 202, 202, 202, 202, 12, 11, 10, 202, 202,
860
- 202, 202, 202, 202, 202, 207, 9, 207, 8, 7,
861
- 6, 5, 4, 3, 0, 0, 0, 0, 0, 0,
862
- 0, 0, 0, 0, 0, 207, 0, 0, 207, 207,
863
- 207, 207, 207, 207, 0, 0, 0, 207, 207, 207,
864
- 207, 207, 207, 207, 210, 210, 210, 210, 210, 210,
865
- 210, 211, 211, 211, 211, 211, 211, 211, 212, 212,
866
- 212, 212, 212, 212, 212, 213, 213, 213, 0, 213,
867
- 213, 214, 214, 215, 215, 0, 215, 215, 215, 215,
868
-
869
- 216, 216, 0, 216, 216, 216, 216, 217, 217, 0,
870
- 217, 217, 217, 217, 218, 218, 0, 218, 218, 218,
871
- 218, 219, 219, 219, 219, 219, 219, 219, 220, 0,
872
- 0, 220, 220, 220, 221, 221, 221, 222, 222, 222,
873
- 222, 222, 222, 222, 223, 223, 0, 223, 223, 223,
874
- 223, 224, 224, 224, 224, 224, 224, 224, 225, 225,
875
- 225, 225, 225, 225, 225, 226, 226, 226, 226, 226,
876
- 226, 226, 227, 227, 227, 227, 227, 227, 227, 209,
877
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
878
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
879
-
880
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
881
- 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
882
- 209, 209
781
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
782
+ 28, 2, 19, 2, 2, 2, 2, 42, 2, 23,
783
+ 246, 28, 22, 22, 2, 2, 2, 22, 24, 44,
784
+ 2, 71, 19, 19, 239, 23, 23, 29, 42, 26,
785
+ 26, 26, 47, 24, 24, 26, 44, 29, 44, 31,
786
+ 22, 71, 32, 99, 26, 47, 19, 31, 31, 32,
787
+
788
+ 32, 22, 33, 32, 235, 24, 99, 33, 39, 39,
789
+ 39, 36, 33, 33, 33, 34, 36, 34, 34, 36,
790
+ 41, 41, 232, 49, 49, 97, 34, 34, 34, 34,
791
+ 34, 34, 52, 39, 97, 40, 230, 34, 34, 34,
792
+ 34, 34, 34, 38, 40, 38, 50, 38, 38, 40,
793
+ 40, 40, 49, 229, 49, 38, 52, 38, 88, 88,
794
+ 102, 50, 38, 38, 38, 38, 38, 54, 54, 102,
795
+ 54, 55, 55, 55, 108, 55, 58, 60, 58, 60,
796
+ 227, 57, 57, 50, 53, 58, 53, 57, 53, 53,
797
+ 100, 53, 62, 62, 119, 119, 119, 226, 59, 53,
798
+
799
+ 108, 53, 100, 57, 57, 53, 59, 59, 61, 103,
800
+ 58, 60, 62, 61, 103, 107, 103, 60, 61, 61,
801
+ 61, 104, 106, 104, 104, 121, 126, 121, 126, 161,
802
+ 106, 109, 106, 104, 104, 117, 104, 104, 228, 107,
803
+ 117, 107, 117, 104, 109, 109, 134, 220, 134, 118,
804
+ 182, 118, 182, 109, 109, 109, 118, 118, 118, 228,
805
+ 120, 140, 140, 161, 109, 120, 120, 120, 141, 141,
806
+ 142, 142, 141, 145, 145, 186, 142, 150, 218, 150,
807
+ 151, 151, 155, 155, 151, 156, 216, 156, 155, 158,
808
+ 158, 165, 165, 145, 150, 150, 150, 159, 207, 159,
809
+
810
+ 162, 186, 162, 158, 183, 205, 183, 185, 185, 191,
811
+ 191, 165, 158, 206, 202, 150, 162, 206, 185, 156,
812
+ 185, 162, 192, 162, 192, 196, 198, 196, 198, 209,
813
+ 209, 159, 187, 200, 187, 187, 223, 244, 223, 219,
814
+ 219, 199, 197, 187, 187, 187, 187, 187, 187, 195,
815
+ 219, 195, 219, 210, 187, 187, 187, 187, 187, 187,
816
+ 242, 244, 242, 245, 198, 245, 195, 195, 195, 210,
817
+ 247, 250, 190, 250, 210, 249, 210, 249, 251, 253,
818
+ 251, 253, 189, 188, 184, 181, 176, 195, 221, 174,
819
+ 221, 221, 249, 172, 250, 247, 171, 170, 167, 221,
820
+
821
+ 221, 221, 160, 221, 221, 157, 152, 144, 143, 138,
822
+ 221, 248, 137, 248, 136, 135, 133, 131, 130, 129,
823
+ 128, 127, 125, 124, 123, 116, 115, 113, 112, 111,
824
+ 105, 101, 98, 96, 248, 95, 94, 93, 248, 248,
825
+ 248, 248, 248, 248, 92, 91, 89, 87, 85, 248,
826
+ 248, 248, 248, 248, 248, 252, 84, 252, 83, 82,
827
+ 81, 80, 79, 78, 77, 76, 75, 72, 70, 69,
828
+ 68, 67, 66, 65, 64, 56, 51, 48, 252, 46,
829
+ 45, 43, 252, 252, 252, 252, 252, 252, 37, 35,
830
+ 30, 27, 25, 252, 252, 252, 252, 252, 252, 255,
831
+
832
+ 255, 255, 255, 255, 255, 255, 256, 21, 256, 257,
833
+ 257, 257, 258, 258, 20, 258, 258, 258, 258, 259,
834
+ 259, 17, 259, 259, 259, 259, 260, 16, 15, 14,
835
+ 260, 260, 261, 261, 13, 261, 261, 261, 261, 262,
836
+ 262, 262, 262, 262, 262, 262, 263, 263, 12, 263,
837
+ 263, 263, 263, 264, 264, 265, 265, 265, 265, 265,
838
+ 265, 265, 266, 266, 266, 266, 266, 266, 266, 267,
839
+ 267, 11, 267, 267, 267, 267, 268, 268, 268, 268,
840
+ 268, 268, 268, 269, 269, 269, 269, 269, 269, 269,
841
+ 270, 270, 270, 270, 270, 270, 270, 271, 271, 271,
842
+
843
+ 271, 271, 271, 271, 10, 9, 8, 7, 6, 5,
844
+ 4, 3, 254, 254, 254, 254, 254, 254, 254, 254,
845
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
846
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
847
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
848
+ 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,
849
+ 254, 254
883
850
  } ;
884
851
 
885
- #define YY_TRAILING_MASK 0x2000
886
- #define YY_TRAILING_HEAD_MASK 0x4000
887
- #define REJECT \
888
- { \
889
- *yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */ \
890
- yy_cp = yyg->yy_full_match; /* restore poss. backed-over text */ \
891
- yyg->yy_lp = yyg->yy_full_lp; /* restore orig. accepting pos. */ \
892
- yyg->yy_state_ptr = yyg->yy_full_state; /* restore orig. state */ \
893
- yy_current_state = *yyg->yy_state_ptr; /* restore curr. state */ \
894
- ++yyg->yy_lp; \
895
- goto find_rule; \
896
- }
897
-
898
- #define yymore() (yyg->yy_more_flag = 1)
899
- #define YY_MORE_ADJ yyg->yy_more_len
852
+ /* The intent behind this definition is that it'll catch
853
+ * any uses of REJECT which flex missed.
854
+ */
855
+ #define REJECT reject_used_but_not_detected
856
+ #define yymore() yymore_used_but_not_detected
857
+ #define YY_MORE_ADJ 0
900
858
  #define YY_RESTORE_YY_MORE_OFFSET
901
859
  #line 1 "tokenizer.l"
902
860
  #line 2 "tokenizer.l"
@@ -949,9 +907,9 @@ goto find_rule; \
949
907
  return 0; \
950
908
  } while (0)
951
909
 
952
- #line 953 "lex.linguist_yy.c"
910
+ #line 911 "lex.linguist_yy.c"
953
911
 
954
- #line 955 "lex.linguist_yy.c"
912
+ #line 913 "lex.linguist_yy.c"
955
913
 
956
914
  #define INITIAL 0
957
915
  #define c_comment 1
@@ -961,7 +919,6 @@ goto find_rule; \
961
919
  #define python_dcomment 5
962
920
  #define python_scomment 6
963
921
  #define roff_comment 7
964
- #define punct 8
965
922
 
966
923
  #ifndef YY_NO_UNISTD_H
967
924
  /* Special case for "unistd.h", since it is non-ANSI. We include it way
@@ -1001,17 +958,6 @@ struct yyguts_t
1001
958
  int yylineno_r;
1002
959
  int yy_flex_debug_r;
1003
960
 
1004
- yy_state_type *yy_state_buf;
1005
- yy_state_type *yy_state_ptr;
1006
- char *yy_full_match;
1007
- int yy_lp;
1008
-
1009
- /* These are only needed for trailing context rules,
1010
- * but there's no conditional variable for that yet. */
1011
- int yy_looking_for_trail_begin;
1012
- int yy_full_lp;
1013
- int *yy_full_state;
1014
-
1015
961
  char *yytext_r;
1016
962
  int yy_more_flag;
1017
963
  int yy_more_len;
@@ -1210,12 +1156,6 @@ YY_DECL
1210
1156
  YY_USER_INIT;
1211
1157
  #endif
1212
1158
 
1213
- /* Create the reject buffer large enough to save one state per allowed character. */
1214
- if ( ! yyg->yy_state_buf )
1215
- yyg->yy_state_buf = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE , yyscanner);
1216
- if ( ! yyg->yy_state_buf )
1217
- YY_FATAL_ERROR( "out of dynamic memory in yylex()" );
1218
-
1219
1159
  if ( ! yyg->yy_start )
1220
1160
  yyg->yy_start = 1; /* first start state */
1221
1161
 
@@ -1235,19 +1175,13 @@ YY_DECL
1235
1175
  }
1236
1176
 
1237
1177
  {
1238
- #line 58 "tokenizer.l"
1178
+ #line 56 "tokenizer.l"
1239
1179
 
1240
1180
 
1241
- #line 1242 "lex.linguist_yy.c"
1181
+ #line 1182 "lex.linguist_yy.c"
1242
1182
 
1243
1183
  while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
1244
1184
  {
1245
- yyg->yy_more_len = 0;
1246
- if ( yyg->yy_more_flag )
1247
- {
1248
- yyg->yy_more_len = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr);
1249
- yyg->yy_more_flag = 0;
1250
- }
1251
1185
  yy_cp = yyg->yy_c_buf_p;
1252
1186
 
1253
1187
  /* Support of yytext. */
@@ -1260,64 +1194,30 @@ YY_DECL
1260
1194
 
1261
1195
  yy_current_state = yyg->yy_start;
1262
1196
  yy_current_state += YY_AT_BOL();
1263
-
1264
- yyg->yy_state_ptr = yyg->yy_state_buf;
1265
- *yyg->yy_state_ptr++ = yy_current_state;
1266
-
1267
1197
  yy_match:
1268
1198
  do
1269
1199
  {
1270
1200
  YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
1201
+ if ( yy_accept[yy_current_state] )
1202
+ {
1203
+ yyg->yy_last_accepting_state = yy_current_state;
1204
+ yyg->yy_last_accepting_cpos = yy_cp;
1205
+ }
1271
1206
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1272
1207
  {
1273
1208
  yy_current_state = (int) yy_def[yy_current_state];
1274
- if ( yy_current_state >= 210 )
1209
+ if ( yy_current_state >= 255 )
1275
1210
  yy_c = yy_meta[yy_c];
1276
1211
  }
1277
1212
  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1278
- *yyg->yy_state_ptr++ = yy_current_state;
1279
1213
  ++yy_cp;
1280
1214
  }
1281
- while ( yy_current_state != 209 );
1215
+ while ( yy_current_state != 254 );
1216
+ yy_cp = yyg->yy_last_accepting_cpos;
1217
+ yy_current_state = yyg->yy_last_accepting_state;
1282
1218
 
1283
1219
  yy_find_action:
1284
- yy_current_state = *--yyg->yy_state_ptr;
1285
- yyg->yy_lp = yy_accept[yy_current_state];
1286
- find_rule: /* we branch to this label when backing up */
1287
- for ( ; ; ) /* until we find what rule we matched */
1288
- {
1289
- if ( yyg->yy_lp && yyg->yy_lp < yy_accept[yy_current_state + 1] )
1290
- {
1291
- yy_act = yy_acclist[yyg->yy_lp];
1292
- if ( yy_act & YY_TRAILING_HEAD_MASK ||
1293
- yyg->yy_looking_for_trail_begin )
1294
- {
1295
- if ( yy_act == yyg->yy_looking_for_trail_begin )
1296
- {
1297
- yyg->yy_looking_for_trail_begin = 0;
1298
- yy_act &= ~YY_TRAILING_HEAD_MASK;
1299
- break;
1300
- }
1301
- }
1302
- else if ( yy_act & YY_TRAILING_MASK )
1303
- {
1304
- yyg->yy_looking_for_trail_begin = yy_act & ~YY_TRAILING_MASK;
1305
- yyg->yy_looking_for_trail_begin |= YY_TRAILING_HEAD_MASK;
1306
- }
1307
- else
1308
- {
1309
- yyg->yy_full_match = yy_cp;
1310
- yyg->yy_full_state = yyg->yy_state_ptr;
1311
- yyg->yy_full_lp = yyg->yy_lp;
1312
- break;
1313
- }
1314
- ++yyg->yy_lp;
1315
- goto find_rule;
1316
- }
1317
- --yy_cp;
1318
- yy_current_state = *--yyg->yy_state_ptr;
1319
- yyg->yy_lp = yy_accept[yy_current_state];
1320
- }
1220
+ yy_act = yy_accept[yy_current_state];
1321
1221
 
1322
1222
  YY_DO_BEFORE_ACTION;
1323
1223
 
@@ -1325,10 +1225,17 @@ do_action: /* This label is used only to access EOF actions. */
1325
1225
 
1326
1226
  switch ( yy_act )
1327
1227
  { /* beginning of action switch */
1228
+ case 0: /* must back up */
1229
+ /* undo the effects of YY_DO_BEFORE_ACTION */
1230
+ *yy_cp = yyg->yy_hold_char;
1231
+ yy_cp = yyg->yy_last_accepting_cpos;
1232
+ yy_current_state = yyg->yy_last_accepting_state;
1233
+ goto yy_find_action;
1234
+
1328
1235
  case 1:
1329
1236
  /* rule 1 can match eol */
1330
1237
  YY_RULE_SETUP
1331
- #line 60 "tokenizer.l"
1238
+ #line 58 "tokenizer.l"
1332
1239
  {
1333
1240
  const char *off = strrchr(yytext, ' ');
1334
1241
  if (!off)
@@ -1342,7 +1249,7 @@ YY_RULE_SETUP
1342
1249
  YY_BREAK
1343
1250
  case 2:
1344
1251
  YY_RULE_SETUP
1345
- #line 71 "tokenizer.l"
1252
+ #line 69 "tokenizer.l"
1346
1253
  {
1347
1254
  const char *off = strrchr(yytext, '/');
1348
1255
  if (!off)
@@ -1361,261 +1268,412 @@ YY_RULE_SETUP
1361
1268
  case 3:
1362
1269
  /* rule 3 can match eol */
1363
1270
  YY_RULE_SETUP
1364
- #line 86 "tokenizer.l"
1271
+ #line 84 "tokenizer.l"
1365
1272
  { FEED_STATIC("COMMENT#"); return 1; }
1366
1273
  YY_BREAK
1367
1274
  case 4:
1368
1275
  /* rule 4 can match eol */
1369
1276
  YY_RULE_SETUP
1370
- #line 87 "tokenizer.l"
1277
+ #line 85 "tokenizer.l"
1371
1278
  { FEED_STATIC("COMMENT//!"); return 1; }
1372
1279
  YY_BREAK
1373
1280
  case 5:
1374
1281
  /* rule 5 can match eol */
1375
1282
  YY_RULE_SETUP
1376
- #line 88 "tokenizer.l"
1283
+ #line 86 "tokenizer.l"
1377
1284
  { FEED_STATIC("COMMENT//"); return 1; }
1378
1285
  YY_BREAK
1379
1286
  case 6:
1380
1287
  /* rule 6 can match eol */
1381
1288
  YY_RULE_SETUP
1382
- #line 89 "tokenizer.l"
1289
+ #line 87 "tokenizer.l"
1383
1290
  { FEED_STATIC("COMMENT--"); return 1; }
1384
1291
  YY_BREAK
1385
1292
  case 7:
1386
1293
  /* rule 7 can match eol */
1387
1294
  YY_RULE_SETUP
1388
- #line 90 "tokenizer.l"
1295
+ #line 88 "tokenizer.l"
1389
1296
  { FEED_STATIC("COMMENT%"); return 1; }
1390
1297
  YY_BREAK
1391
1298
  case 8:
1392
1299
  /* rule 8 can match eol */
1393
1300
  YY_RULE_SETUP
1394
- #line 91 "tokenizer.l"
1301
+ #line 89 "tokenizer.l"
1395
1302
  { FEED_STATIC("COMMENT\""); return 1; }
1396
1303
  YY_BREAK
1397
1304
  case 9:
1398
1305
  /* rule 9 can match eol */
1399
1306
  YY_RULE_SETUP
1400
- #line 92 "tokenizer.l"
1307
+ #line 90 "tokenizer.l"
1401
1308
  { FEED_STATIC("COMMENT;"); return 1; }
1402
1309
  YY_BREAK
1403
1310
  case 10:
1404
1311
  /* rule 10 can match eol */
1405
1312
  YY_RULE_SETUP
1406
- #line 93 "tokenizer.l"
1313
+ #line 91 "tokenizer.l"
1407
1314
  { FEED_STATIC("COMMENT.\\\""); return 1; }
1408
1315
  YY_BREAK
1409
1316
  case 11:
1410
1317
  /* rule 11 can match eol */
1411
1318
  YY_RULE_SETUP
1412
- #line 94 "tokenizer.l"
1319
+ #line 92 "tokenizer.l"
1413
1320
  { FEED_STATIC("COMMENT'\\\""); return 1; }
1414
1321
  YY_BREAK
1415
1322
  case 12:
1323
+ /* rule 12 can match eol */
1416
1324
  YY_RULE_SETUP
1417
- #line 96 "tokenizer.l"
1418
- { FEED_STATIC("COMMENT/*"); return 1; }
1325
+ #line 93 "tokenizer.l"
1326
+ { FEED_STATIC("COMMENT$!"); return 1; }
1419
1327
  YY_BREAK
1420
1328
  case 13:
1421
1329
  YY_RULE_SETUP
1422
- #line 97 "tokenizer.l"
1423
- { FEED_STATIC("COMMENT/**"); BEGIN(c_comment); return 1; }
1330
+ #line 95 "tokenizer.l"
1331
+ { FEED_STATIC("COMMENT/*"); return 1; }
1424
1332
  YY_BREAK
1425
1333
  case 14:
1426
1334
  YY_RULE_SETUP
1427
- #line 98 "tokenizer.l"
1428
- { FEED_STATIC("COMMENT/*!"); BEGIN(c_comment); return 1; }
1335
+ #line 96 "tokenizer.l"
1336
+ { FEED_STATIC("COMMENT/**"); BEGIN(c_comment); return 1; }
1429
1337
  YY_BREAK
1430
1338
  case 15:
1431
1339
  YY_RULE_SETUP
1432
- #line 99 "tokenizer.l"
1433
- { FEED_STATIC("COMMENT/*"); BEGIN(c_comment); return 1; }
1340
+ #line 97 "tokenizer.l"
1341
+ { FEED_STATIC("COMMENT/*!"); BEGIN(c_comment); return 1; }
1434
1342
  YY_BREAK
1435
1343
  case 16:
1436
1344
  YY_RULE_SETUP
1437
- #line 100 "tokenizer.l"
1438
- { FEED_STATIC("COMMENT<!--"); BEGIN(xml_comment); return 1; }
1345
+ #line 98 "tokenizer.l"
1346
+ { FEED_STATIC("COMMENT/*"); BEGIN(c_comment); return 1; }
1439
1347
  YY_BREAK
1440
1348
  case 17:
1441
1349
  YY_RULE_SETUP
1442
- #line 101 "tokenizer.l"
1443
- { FEED_STATIC("COMMENT{-"); BEGIN(haskell_comment); return 1; }
1350
+ #line 99 "tokenizer.l"
1351
+ { FEED_STATIC("COMMENT<!--"); BEGIN(xml_comment); return 1; }
1444
1352
  YY_BREAK
1445
1353
  case 18:
1446
1354
  YY_RULE_SETUP
1447
- #line 102 "tokenizer.l"
1448
- { FEED_STATIC("COMMENT(*"); BEGIN(ocaml_comment); return 1; }
1355
+ #line 100 "tokenizer.l"
1356
+ { FEED_STATIC("COMMENT{-"); BEGIN(haskell_comment); return 1; }
1449
1357
  YY_BREAK
1450
1358
  case 19:
1451
1359
  YY_RULE_SETUP
1452
- #line 103 "tokenizer.l"
1453
- { FEED_STATIC("COMMENT\"\"\""); BEGIN(python_dcomment); return 1; }
1360
+ #line 101 "tokenizer.l"
1361
+ { FEED_STATIC("COMMENT(*"); BEGIN(ocaml_comment); return 1; }
1454
1362
  YY_BREAK
1455
1363
  case 20:
1456
1364
  YY_RULE_SETUP
1457
- #line 104 "tokenizer.l"
1458
- { FEED_STATIC("COMMENT'''"); BEGIN(python_scomment); return 1; }
1365
+ #line 102 "tokenizer.l"
1366
+ { FEED_STATIC("COMMENT\"\"\""); BEGIN(python_dcomment); return 1; }
1459
1367
  YY_BREAK
1460
1368
  case 21:
1461
- /* rule 21 can match eol */
1462
1369
  YY_RULE_SETUP
1463
- #line 105 "tokenizer.l"
1464
- { FEED_STATIC("COMMENT.ig"); BEGIN(roff_comment); return 1; }
1370
+ #line 103 "tokenizer.l"
1371
+ { FEED_STATIC("COMMENT'''"); BEGIN(python_scomment); return 1; }
1465
1372
  YY_BREAK
1466
1373
  case 22:
1467
1374
  /* rule 22 can match eol */
1468
1375
  YY_RULE_SETUP
1469
- #line 107 "tokenizer.l"
1470
- { /* nothing */ }
1376
+ #line 104 "tokenizer.l"
1377
+ { FEED_STATIC("COMMENT.ig"); BEGIN(roff_comment); return 1; }
1471
1378
  YY_BREAK
1472
1379
  case 23:
1380
+ /* rule 23 can match eol */
1473
1381
  YY_RULE_SETUP
1474
- #line 108 "tokenizer.l"
1475
- { BEGIN(INITIAL); }
1382
+ #line 106 "tokenizer.l"
1383
+ { /* nothing */ }
1476
1384
  YY_BREAK
1477
1385
  case 24:
1478
1386
  YY_RULE_SETUP
1479
- #line 109 "tokenizer.l"
1387
+ #line 107 "tokenizer.l"
1480
1388
  { BEGIN(INITIAL); }
1481
1389
  YY_BREAK
1482
1390
  case 25:
1483
1391
  YY_RULE_SETUP
1484
- #line 110 "tokenizer.l"
1392
+ #line 108 "tokenizer.l"
1485
1393
  { BEGIN(INITIAL); }
1486
1394
  YY_BREAK
1487
1395
  case 26:
1488
1396
  YY_RULE_SETUP
1489
- #line 111 "tokenizer.l"
1397
+ #line 109 "tokenizer.l"
1490
1398
  { BEGIN(INITIAL); }
1491
1399
  YY_BREAK
1492
1400
  case 27:
1493
1401
  YY_RULE_SETUP
1494
- #line 112 "tokenizer.l"
1402
+ #line 110 "tokenizer.l"
1495
1403
  { BEGIN(INITIAL); }
1496
1404
  YY_BREAK
1497
1405
  case 28:
1498
1406
  YY_RULE_SETUP
1499
- #line 113 "tokenizer.l"
1407
+ #line 111 "tokenizer.l"
1500
1408
  { BEGIN(INITIAL); }
1501
1409
  YY_BREAK
1502
1410
  case 29:
1503
- /* rule 29 can match eol */
1504
1411
  YY_RULE_SETUP
1505
- #line 114 "tokenizer.l"
1412
+ #line 112 "tokenizer.l"
1506
1413
  { BEGIN(INITIAL); }
1507
1414
  YY_BREAK
1508
1415
  case 30:
1416
+ /* rule 30 can match eol */
1509
1417
  YY_RULE_SETUP
1510
- #line 116 "tokenizer.l"
1511
- { /* nothing */ }
1418
+ #line 113 "tokenizer.l"
1419
+ { BEGIN(INITIAL); }
1512
1420
  YY_BREAK
1513
1421
  case 31:
1514
1422
  YY_RULE_SETUP
1515
- #line 117 "tokenizer.l"
1516
- { eat_until_unescaped('"'); }
1423
+ #line 115 "tokenizer.l"
1424
+ { /* nothing */ }
1517
1425
  YY_BREAK
1518
1426
  case 32:
1519
1427
  YY_RULE_SETUP
1520
- #line 118 "tokenizer.l"
1521
- { eat_until_unescaped('\''); }
1428
+ #line 116 "tokenizer.l"
1429
+ { eat_until_unescaped('"'); }
1522
1430
  YY_BREAK
1523
1431
  case 33:
1524
1432
  YY_RULE_SETUP
1525
- #line 119 "tokenizer.l"
1526
- { /* nothing */ }
1433
+ #line 117 "tokenizer.l"
1434
+ { eat_until_unescaped('\''); }
1527
1435
  YY_BREAK
1528
1436
  case 34:
1529
1437
  YY_RULE_SETUP
1530
- #line 121 "tokenizer.l"
1531
- { FEED(); return 1; }
1438
+ #line 118 "tokenizer.l"
1439
+ { /* nothing */ }
1532
1440
  YY_BREAK
1533
1441
  case 35:
1534
1442
  YY_RULE_SETUP
1535
- #line 122 "tokenizer.l"
1443
+ #line 120 "tokenizer.l"
1536
1444
  { FEED(); return 1; }
1537
1445
  YY_BREAK
1538
1446
  case 36:
1539
1447
  YY_RULE_SETUP
1540
- #line 123 "tokenizer.l"
1448
+ #line 122 "tokenizer.l"
1541
1449
  { FEED(); return 1; }
1542
1450
  YY_BREAK
1543
1451
  case 37:
1544
- /* rule 37 can match eol */
1545
- *yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */
1546
- YY_LINENO_REWIND_TO(yy_cp - 1);
1547
- yyg->yy_c_buf_p = yy_cp -= 1;
1548
- YY_DO_BEFORE_ACTION; /* set up yytext again */
1549
1452
  YY_RULE_SETUP
1550
- #line 125 "tokenizer.l"
1551
- { FEED(); BEGIN(INITIAL); return 1; }
1453
+ #line 123 "tokenizer.l"
1454
+ { FEED(); return 1; }
1552
1455
  YY_BREAK
1553
1456
  case 38:
1554
1457
  YY_RULE_SETUP
1555
- #line 126 "tokenizer.l"
1556
- { FEED(); BEGIN(INITIAL); return 1; }
1458
+ #line 124 "tokenizer.l"
1459
+ { FEED(); return 1; }
1557
1460
  YY_BREAK
1558
1461
  case 39:
1559
- /* rule 39 can match eol */
1560
- *yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */
1561
- YY_LINENO_REWIND_TO(yy_cp - 1);
1562
- yyg->yy_c_buf_p = yy_cp -= 1;
1563
- YY_DO_BEFORE_ACTION; /* set up yytext again */
1564
1462
  YY_RULE_SETUP
1565
- #line 127 "tokenizer.l"
1566
- { FEED(); BEGIN(INITIAL); return 1; }
1463
+ #line 125 "tokenizer.l"
1464
+ { FEED(); return 1; }
1567
1465
  YY_BREAK
1568
1466
  case 40:
1569
- *yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */
1570
- yyg->yy_c_buf_p = yy_cp -= 4;
1571
- YY_DO_BEFORE_ACTION; /* set up yytext again */
1572
1467
  YY_RULE_SETUP
1573
- #line 128 "tokenizer.l"
1574
- { FEED(); BEGIN(INITIAL); return 1; }
1468
+ #line 126 "tokenizer.l"
1469
+ { FEED(); return 1; }
1575
1470
  YY_BREAK
1576
1471
  case 41:
1577
- *yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */
1578
- yyg->yy_c_buf_p = yy_cp -= 2;
1579
- YY_DO_BEFORE_ACTION; /* set up yytext again */
1580
1472
  YY_RULE_SETUP
1581
- #line 129 "tokenizer.l"
1582
- { FEED(); BEGIN(INITIAL); return 1; }
1473
+ #line 127 "tokenizer.l"
1474
+ { FEED(); return 1; }
1583
1475
  YY_BREAK
1584
1476
  case 42:
1585
1477
  YY_RULE_SETUP
1586
- #line 130 "tokenizer.l"
1587
- { yymore(); BEGIN(punct); }
1478
+ #line 128 "tokenizer.l"
1479
+ { FEED(); return 1; }
1588
1480
  YY_BREAK
1589
1481
  case 43:
1590
1482
  YY_RULE_SETUP
1591
- #line 131 "tokenizer.l"
1592
- { yymore(); BEGIN(punct); }
1593
- YY_BREAK
1594
- case YY_STATE_EOF(punct):
1595
- #line 132 "tokenizer.l"
1596
- { FEED2(yytext, yyleng - 1); BEGIN(INITIAL); return 1; }
1483
+ #line 130 "tokenizer.l"
1484
+ { FEED(); return 1; }
1597
1485
  YY_BREAK
1598
1486
  case 44:
1599
- /* rule 44 can match eol */
1600
1487
  YY_RULE_SETUP
1601
- #line 134 "tokenizer.l"
1602
- { /* nothing */ }
1488
+ #line 132 "tokenizer.l"
1489
+ { FEED(); return 1; }
1603
1490
  YY_BREAK
1604
1491
  case 45:
1605
1492
  YY_RULE_SETUP
1493
+ #line 133 "tokenizer.l"
1494
+ { FEED(); return 1; }
1495
+ YY_BREAK
1496
+ case 46:
1497
+ YY_RULE_SETUP
1498
+ #line 135 "tokenizer.l"
1499
+ { FEED(); return 1; }
1500
+ YY_BREAK
1501
+ case 47:
1502
+ YY_RULE_SETUP
1606
1503
  #line 136 "tokenizer.l"
1504
+ { FEED(); return 1; }
1505
+ YY_BREAK
1506
+ case 48:
1507
+ YY_RULE_SETUP
1508
+ #line 138 "tokenizer.l"
1509
+ { FEED(); return 1; }
1510
+ YY_BREAK
1511
+ case 49:
1512
+ YY_RULE_SETUP
1513
+ #line 139 "tokenizer.l"
1514
+ { FEED(); return 1; }
1515
+ YY_BREAK
1516
+ case 50:
1517
+ YY_RULE_SETUP
1518
+ #line 140 "tokenizer.l"
1519
+ { FEED(); return 1; }
1520
+ YY_BREAK
1521
+ case 51:
1522
+ YY_RULE_SETUP
1523
+ #line 141 "tokenizer.l"
1524
+ { FEED(); return 1; }
1525
+ YY_BREAK
1526
+ case 52:
1527
+ YY_RULE_SETUP
1528
+ #line 142 "tokenizer.l"
1529
+ { FEED(); return 1; }
1530
+ YY_BREAK
1531
+ case 53:
1532
+ YY_RULE_SETUP
1533
+ #line 143 "tokenizer.l"
1534
+ { FEED(); return 1; }
1535
+ YY_BREAK
1536
+ case 54:
1537
+ YY_RULE_SETUP
1538
+ #line 144 "tokenizer.l"
1539
+ { FEED(); return 1; }
1540
+ YY_BREAK
1541
+ case 55:
1542
+ YY_RULE_SETUP
1543
+ #line 145 "tokenizer.l"
1544
+ { FEED(); return 1; }
1545
+ YY_BREAK
1546
+ case 56:
1547
+ YY_RULE_SETUP
1548
+ #line 147 "tokenizer.l"
1549
+ { FEED(); return 1; }
1550
+ YY_BREAK
1551
+ case 57:
1552
+ YY_RULE_SETUP
1553
+ #line 148 "tokenizer.l"
1554
+ { FEED(); return 1; }
1555
+ YY_BREAK
1556
+ case 58:
1557
+ YY_RULE_SETUP
1558
+ #line 149 "tokenizer.l"
1559
+ { FEED(); return 1; }
1560
+ YY_BREAK
1561
+ case 59:
1562
+ YY_RULE_SETUP
1563
+ #line 151 "tokenizer.l"
1564
+ { FEED(); return 1; }
1565
+ YY_BREAK
1566
+ case 60:
1567
+ YY_RULE_SETUP
1568
+ #line 152 "tokenizer.l"
1569
+ { FEED(); return 1; }
1570
+ YY_BREAK
1571
+ case 61:
1572
+ YY_RULE_SETUP
1573
+ #line 153 "tokenizer.l"
1574
+ { FEED(); return 1; }
1575
+ YY_BREAK
1576
+ case 62:
1577
+ YY_RULE_SETUP
1578
+ #line 154 "tokenizer.l"
1579
+ { FEED(); return 1; }
1580
+ YY_BREAK
1581
+ case 63:
1582
+ YY_RULE_SETUP
1583
+ #line 155 "tokenizer.l"
1584
+ { FEED(); return 1; }
1585
+ YY_BREAK
1586
+ case 64:
1587
+ YY_RULE_SETUP
1588
+ #line 156 "tokenizer.l"
1589
+ { FEED(); return 1; }
1590
+ YY_BREAK
1591
+ case 65:
1592
+ YY_RULE_SETUP
1593
+ #line 157 "tokenizer.l"
1594
+ { FEED(); return 1; }
1595
+ YY_BREAK
1596
+ case 66:
1597
+ YY_RULE_SETUP
1598
+ #line 158 "tokenizer.l"
1599
+ { FEED(); return 1; }
1600
+ YY_BREAK
1601
+ case 67:
1602
+ YY_RULE_SETUP
1603
+ #line 159 "tokenizer.l"
1604
+ { FEED(); return 1; }
1605
+ YY_BREAK
1606
+ case 68:
1607
+ YY_RULE_SETUP
1608
+ #line 160 "tokenizer.l"
1609
+ { FEED(); return 1; }
1610
+ YY_BREAK
1611
+ case 69:
1612
+ YY_RULE_SETUP
1613
+ #line 161 "tokenizer.l"
1614
+ { FEED(); return 1; }
1615
+ YY_BREAK
1616
+ case 70:
1617
+ YY_RULE_SETUP
1618
+ #line 162 "tokenizer.l"
1619
+ { FEED(); return 1; }
1620
+ YY_BREAK
1621
+ case 71:
1622
+ YY_RULE_SETUP
1623
+ #line 163 "tokenizer.l"
1624
+ { FEED(); return 1; }
1625
+ YY_BREAK
1626
+ case 72:
1627
+ YY_RULE_SETUP
1628
+ #line 164 "tokenizer.l"
1629
+ { FEED(); return 1; }
1630
+ YY_BREAK
1631
+ case 73:
1632
+ YY_RULE_SETUP
1633
+ #line 165 "tokenizer.l"
1634
+ { FEED(); return 1; }
1635
+ YY_BREAK
1636
+ case 74:
1637
+ YY_RULE_SETUP
1638
+ #line 166 "tokenizer.l"
1639
+ { FEED(); return 1; }
1640
+ YY_BREAK
1641
+ case 75:
1642
+ YY_RULE_SETUP
1643
+ #line 167 "tokenizer.l"
1644
+ { FEED(); return 1; }
1645
+ YY_BREAK
1646
+ case 76:
1647
+ YY_RULE_SETUP
1648
+ #line 168 "tokenizer.l"
1649
+ { FEED(); return 1; }
1650
+ YY_BREAK
1651
+ case 77:
1652
+ YY_RULE_SETUP
1653
+ #line 169 "tokenizer.l"
1654
+ { FEED(); return 1; }
1655
+ YY_BREAK
1656
+ case 78:
1657
+ /* rule 78 can match eol */
1658
+ YY_RULE_SETUP
1659
+ #line 171 "tokenizer.l"
1660
+ { /* nothing */ }
1661
+ YY_BREAK
1662
+ case 79:
1663
+ YY_RULE_SETUP
1664
+ #line 173 "tokenizer.l"
1607
1665
  YY_FATAL_ERROR( "flex scanner jammed" );
1608
1666
  YY_BREAK
1609
- #line 1610 "lex.linguist_yy.c"
1610
- case YY_STATE_EOF(INITIAL):
1611
- case YY_STATE_EOF(c_comment):
1612
- case YY_STATE_EOF(xml_comment):
1613
- case YY_STATE_EOF(haskell_comment):
1614
- case YY_STATE_EOF(ocaml_comment):
1615
- case YY_STATE_EOF(python_dcomment):
1616
- case YY_STATE_EOF(python_scomment):
1617
- case YY_STATE_EOF(roff_comment):
1618
- yyterminate();
1667
+ #line 1668 "lex.linguist_yy.c"
1668
+ case YY_STATE_EOF(INITIAL):
1669
+ case YY_STATE_EOF(c_comment):
1670
+ case YY_STATE_EOF(xml_comment):
1671
+ case YY_STATE_EOF(haskell_comment):
1672
+ case YY_STATE_EOF(ocaml_comment):
1673
+ case YY_STATE_EOF(python_dcomment):
1674
+ case YY_STATE_EOF(python_scomment):
1675
+ case YY_STATE_EOF(roff_comment):
1676
+ yyterminate();
1619
1677
 
1620
1678
  case YY_END_OF_BUFFER:
1621
1679
  {
@@ -1680,7 +1738,8 @@ YY_FATAL_ERROR( "flex scanner jammed" );
1680
1738
 
1681
1739
  else
1682
1740
  {
1683
- yy_cp = yyg->yy_c_buf_p;
1741
+ yy_cp = yyg->yy_last_accepting_cpos;
1742
+ yy_current_state = yyg->yy_last_accepting_state;
1684
1743
  goto yy_find_action;
1685
1744
  }
1686
1745
  }
@@ -1807,8 +1866,38 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1807
1866
  while ( num_to_read <= 0 )
1808
1867
  { /* Not enough room in the buffer - grow it. */
1809
1868
 
1810
- YY_FATAL_ERROR(
1811
- "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
1869
+ /* just a shorter name for the current buffer */
1870
+ YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
1871
+
1872
+ int yy_c_buf_p_offset =
1873
+ (int) (yyg->yy_c_buf_p - b->yy_ch_buf);
1874
+
1875
+ if ( b->yy_is_our_buffer )
1876
+ {
1877
+ int new_size = b->yy_buf_size * 2;
1878
+
1879
+ if ( new_size <= 0 )
1880
+ b->yy_buf_size += b->yy_buf_size / 8;
1881
+ else
1882
+ b->yy_buf_size *= 2;
1883
+
1884
+ b->yy_ch_buf = (char *)
1885
+ /* Include room in for 2 EOB chars. */
1886
+ yyrealloc( (void *) b->yy_ch_buf,
1887
+ (yy_size_t) (b->yy_buf_size + 2) , yyscanner );
1888
+ }
1889
+ else
1890
+ /* Can't grow it, we don't own it. */
1891
+ b->yy_ch_buf = NULL;
1892
+
1893
+ if ( ! b->yy_ch_buf )
1894
+ YY_FATAL_ERROR(
1895
+ "fatal error - scanner input buffer overflow" );
1896
+
1897
+ yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
1898
+
1899
+ num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
1900
+ number_to_move - 1;
1812
1901
 
1813
1902
  }
1814
1903
 
@@ -1872,20 +1961,21 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1872
1961
  yy_current_state = yyg->yy_start;
1873
1962
  yy_current_state += YY_AT_BOL();
1874
1963
 
1875
- yyg->yy_state_ptr = yyg->yy_state_buf;
1876
- *yyg->yy_state_ptr++ = yy_current_state;
1877
-
1878
1964
  for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp )
1879
1965
  {
1880
1966
  YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
1967
+ if ( yy_accept[yy_current_state] )
1968
+ {
1969
+ yyg->yy_last_accepting_state = yy_current_state;
1970
+ yyg->yy_last_accepting_cpos = yy_cp;
1971
+ }
1881
1972
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1882
1973
  {
1883
1974
  yy_current_state = (int) yy_def[yy_current_state];
1884
- if ( yy_current_state >= 210 )
1975
+ if ( yy_current_state >= 255 )
1885
1976
  yy_c = yy_meta[yy_c];
1886
1977
  }
1887
1978
  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1888
- *yyg->yy_state_ptr++ = yy_current_state;
1889
1979
  }
1890
1980
 
1891
1981
  return yy_current_state;
@@ -1900,18 +1990,22 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1900
1990
  {
1901
1991
  int yy_is_jam;
1902
1992
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */
1993
+ char *yy_cp = yyg->yy_c_buf_p;
1903
1994
 
1904
1995
  YY_CHAR yy_c = 1;
1996
+ if ( yy_accept[yy_current_state] )
1997
+ {
1998
+ yyg->yy_last_accepting_state = yy_current_state;
1999
+ yyg->yy_last_accepting_cpos = yy_cp;
2000
+ }
1905
2001
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1906
2002
  {
1907
2003
  yy_current_state = (int) yy_def[yy_current_state];
1908
- if ( yy_current_state >= 210 )
2004
+ if ( yy_current_state >= 255 )
1909
2005
  yy_c = yy_meta[yy_c];
1910
2006
  }
1911
2007
  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1912
- yy_is_jam = (yy_current_state == 209);
1913
- if ( ! yy_is_jam )
1914
- *yyg->yy_state_ptr++ = yy_current_state;
2008
+ yy_is_jam = (yy_current_state == 254);
1915
2009
 
1916
2010
  (void)yyg;
1917
2011
  return yy_is_jam ? 0 : yy_current_state;
@@ -2609,11 +2703,6 @@ static int yy_init_globals (yyscan_t yyscanner)
2609
2703
  yyg->yy_start_stack_depth = 0;
2610
2704
  yyg->yy_start_stack = NULL;
2611
2705
 
2612
- yyg->yy_state_buf = 0;
2613
- yyg->yy_state_ptr = 0;
2614
- yyg->yy_full_match = 0;
2615
- yyg->yy_lp = 0;
2616
-
2617
2706
  /* Defined in main.c */
2618
2707
  #ifdef YY_STDINIT
2619
2708
  yyin = stdin;
@@ -2649,9 +2738,6 @@ int yylex_destroy (yyscan_t yyscanner)
2649
2738
  yyfree( yyg->yy_start_stack , yyscanner );
2650
2739
  yyg->yy_start_stack = NULL;
2651
2740
 
2652
- yyfree ( yyg->yy_state_buf , yyscanner);
2653
- yyg->yy_state_buf = NULL;
2654
-
2655
2741
  /* Reset the globals. This is important in a non-reentrant scanner so the next time
2656
2742
  * yylex() is called, initialization will occur. */
2657
2743
  yy_init_globals( yyscanner);
@@ -2720,7 +2806,7 @@ void yyfree (void * ptr , yyscan_t yyscanner)
2720
2806
 
2721
2807
  #define YYTABLES_NAME "yytables"
2722
2808
 
2723
- #line 136 "tokenizer.l"
2809
+ #line 173 "tokenizer.l"
2724
2810
 
2725
2811
 
2726
2812