github-linguist 7.12.2 → 7.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/linguist/lex.linguist_yy.c +579 -335
- data/ext/linguist/lex.linguist_yy.h +10 -9
- data/ext/linguist/tokenizer.l +47 -54
- data/grammars/etc.json +1 -1
- data/grammars/markdown.lean.codeblock.json +1 -0
- data/grammars/source.abap.json +1 -1
- data/grammars/source.abapcds.json +1 -0
- data/grammars/source.ats.json +1 -1
- data/grammars/source.ballerina.json +1 -1
- data/grammars/source.boogie.json +1 -0
- data/grammars/source.cirru.json +1 -1
- data/grammars/source.clarion.json +1 -1
- data/grammars/source.css.json +1 -1
- data/grammars/source.d.json +1 -1
- data/grammars/source.elixir.json +1 -1
- data/grammars/source.fsharp.json +1 -1
- data/grammars/source.gcode.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.idris.json +1 -1
- data/grammars/source.isabelle.theory.json +1 -1
- data/grammars/source.j.json +1 -1
- data/grammars/source.js.json +1 -1
- data/grammars/source.julia.json +1 -1
- data/grammars/source.kotlin.json +1 -1
- data/grammars/source.lilypond.json +1 -1
- data/grammars/source.m2.json +1 -1
- data/grammars/source.meson.json +1 -1
- data/grammars/source.msl.json +1 -1
- data/grammars/source.nunjucks.json +1 -0
- data/grammars/source.prisma.json +1 -1
- data/grammars/source.qsharp.json +1 -1
- data/grammars/source.rebol.json +1 -1
- data/grammars/source.record-jar.json +1 -0
- data/grammars/source.red.json +1 -1
- data/grammars/source.regexp.json +1 -1
- data/grammars/source.regexp.posix.json +1 -0
- data/grammars/source.rescript.json +1 -1
- data/grammars/source.ruby.json +1 -1
- data/grammars/source.scala.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.sy.json +1 -1
- data/grammars/source.ts.json +1 -1
- data/grammars/source.tsx.json +1 -1
- data/grammars/source.v.json +1 -1
- data/grammars/source.viml.json +1 -1
- data/grammars/source.webidl.json +1 -1
- data/grammars/source.zeek.json +1 -1
- data/grammars/text.browserslist.json +1 -1
- data/grammars/text.checksums.json +1 -0
- data/grammars/text.html.erb.json +1 -1
- data/grammars/text.html.liquid.json +1 -1
- data/grammars/text.html.nunjucks.json +1 -0
- data/grammars/text.roff.json +1 -1
- data/grammars/text.xml.svg.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/classifier.rb +9 -5
- data/lib/linguist/generated.rb +9 -0
- data/lib/linguist/generic.yml +1 -0
- data/lib/linguist/heuristics.yml +17 -2
- data/lib/linguist/language.rb +4 -2
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +80 -20
- data/lib/linguist/linguist.bundle +0 -0
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/samples.rb +2 -2
- data/lib/linguist/vendor.yml +1 -1
- metadata +11 -6
- data/grammars/source.css.scss.liquid.json +0 -1
- data/grammars/source.js.css.json +0 -1
- data/grammars/source.js.jsx.json +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c89155dae3df838c6e0a40aa959d26ec8b4b0fcbd72c4d65ee342939bedccc16
|
4
|
+
data.tar.gz: 5f5c64b53db69e93454afb651c23b317458cb54e328fdcc12d20250475523e90
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc2cf3e88c30e266619b12ff0c06c03042b471df4e6cefc978c3f346ad9bccfa2de5732917cffd167c1ce7d788ed1fa2421710996ee95bea4e679dcdf0f11968
|
7
|
+
data.tar.gz: be903fbbc5426eadb866949db44e7c5764499c51b27369a0495e8a787384b3cccd7577c2cd354a816c7fca2e400a32dea9551beec9fc2c958e8d18ef388373fb
|
@@ -541,12 +541,13 @@ 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
|
-
|
544
|
+
yyg->yytext_ptr -= yyg->yy_more_len; \
|
545
|
+
yyleng = (int) (yy_cp - yyg->yytext_ptr); \
|
545
546
|
yyg->yy_hold_char = *yy_cp; \
|
546
547
|
*yy_cp = '\0'; \
|
547
548
|
yyg->yy_c_buf_p = yy_cp;
|
548
|
-
#define YY_NUM_RULES
|
549
|
-
#define YY_END_OF_BUFFER
|
549
|
+
#define YY_NUM_RULES 45
|
550
|
+
#define YY_END_OF_BUFFER 46
|
550
551
|
/* This struct is not used in this scanner,
|
551
552
|
but its presence is necessary. */
|
552
553
|
struct yy_trans_info
|
@@ -554,21 +555,64 @@ struct yy_trans_info
|
|
554
555
|
flex_int32_t yy_verify;
|
555
556
|
flex_int32_t yy_nxt;
|
556
557
|
};
|
557
|
-
static const flex_int16_t
|
558
|
+
static const flex_int16_t yy_acclist[262] =
|
558
559
|
{ 0,
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
22,
|
569
|
-
|
570
|
-
|
571
|
-
|
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
|
572
616
|
} ;
|
573
617
|
|
574
618
|
static const YY_CHAR yy_ec[256] =
|
@@ -576,17 +620,17 @@ static const YY_CHAR yy_ec[256] =
|
|
576
620
|
1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
|
577
621
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
578
622
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
579
|
-
1, 4, 5, 6, 7,
|
580
|
-
12, 13, 14,
|
581
|
-
19, 19, 19, 19, 19, 19, 19,
|
582
|
-
22, 23, 24, 25,
|
583
|
-
|
584
|
-
|
585
|
-
32,
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
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,
|
590
634
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
591
635
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
592
636
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
@@ -603,152 +647,256 @@ static const YY_CHAR yy_ec[256] =
|
|
603
647
|
1, 1, 1, 1, 1
|
604
648
|
} ;
|
605
649
|
|
606
|
-
static const YY_CHAR yy_meta[
|
650
|
+
static const YY_CHAR yy_meta[43] =
|
607
651
|
{ 0,
|
608
|
-
1, 2, 3, 2, 4,
|
609
|
-
1, 1,
|
610
|
-
4,
|
611
|
-
|
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
|
612
657
|
} ;
|
613
658
|
|
614
|
-
static const flex_int16_t yy_base[
|
659
|
+
static const flex_int16_t yy_base[228] =
|
615
660
|
{ 0,
|
616
|
-
0,
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
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
|
630
686
|
} ;
|
631
687
|
|
632
|
-
static const flex_int16_t yy_def[
|
688
|
+
static const flex_int16_t yy_def[228] =
|
633
689
|
{ 0,
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
|
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
|
648
715
|
} ;
|
649
716
|
|
650
|
-
static const flex_int16_t yy_nxt[
|
717
|
+
static const flex_int16_t yy_nxt[723] =
|
651
718
|
{ 0,
|
652
|
-
|
653
|
-
|
654
|
-
30,
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
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
|
696
799
|
} ;
|
697
800
|
|
698
|
-
static const flex_int16_t yy_chk[
|
801
|
+
static const flex_int16_t yy_chk[723] =
|
699
802
|
{ 0,
|
700
803
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
701
804
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
702
805
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
703
806
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
711
|
-
|
712
|
-
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
722
|
-
|
723
|
-
|
724
|
-
|
725
|
-
|
726
|
-
|
727
|
-
|
728
|
-
|
729
|
-
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
742
|
-
|
743
|
-
|
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
|
744
883
|
} ;
|
745
884
|
|
746
|
-
|
747
|
-
|
748
|
-
|
749
|
-
|
750
|
-
|
751
|
-
|
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
|
752
900
|
#define YY_RESTORE_YY_MORE_OFFSET
|
753
901
|
#line 1 "tokenizer.l"
|
754
902
|
#line 2 "tokenizer.l"
|
@@ -756,33 +904,26 @@ static const flex_int16_t yy_chk[399] =
|
|
756
904
|
#include "ruby.h"
|
757
905
|
|
758
906
|
// Anything longer is unlikely to be useful.
|
759
|
-
#define MAX_TOKEN_LEN
|
907
|
+
#define MAX_TOKEN_LEN 16
|
760
908
|
|
761
909
|
#define FEED2(s, l) do { \
|
762
910
|
const char* __s = (s); \
|
763
911
|
const size_t __l = (l); \
|
764
|
-
|
765
|
-
|
766
|
-
*yyextra = rb_str_new(__s, __l); \
|
912
|
+
const size_t __cl = __l > MAX_TOKEN_LEN? MAX_TOKEN_LEN : __l; \
|
913
|
+
*yyextra = rb_str_new(__s, __cl); \
|
767
914
|
} while(0)
|
768
915
|
|
769
916
|
#define FEED1(s) FEED2(s, strlen(s))
|
770
917
|
|
771
918
|
#define FEED() FEED2(yytext, yyleng)
|
772
919
|
|
920
|
+
#define FEED_STATIC(s) FEED2(s, sizeof(s) - 1)
|
921
|
+
|
773
922
|
#define FEED_SHEBANG(s) do { \
|
774
923
|
const size_t __l = strlen(s); \
|
775
|
-
|
776
|
-
break; \
|
924
|
+
const size_t __cl = __l > MAX_TOKEN_LEN? MAX_TOKEN_LEN : __l; \
|
777
925
|
*yyextra = rb_str_new("SHEBANG#!", sizeof("SHEBANG#!") - 1); \
|
778
|
-
rb_str_cat(*yyextra, s,
|
779
|
-
} while(0)
|
780
|
-
|
781
|
-
#define FEED_SGML() do { \
|
782
|
-
if (yyleng > MAX_TOKEN_LEN) \
|
783
|
-
break; \
|
784
|
-
*yyextra = rb_str_new(yytext, yyleng); \
|
785
|
-
rb_str_cat(*yyextra, ">", 1); \
|
926
|
+
rb_str_cat(*yyextra, s, __cl); \
|
786
927
|
} while(0)
|
787
928
|
|
788
929
|
#define eat_until_eol() do { \
|
@@ -808,18 +949,19 @@ static const flex_int16_t yy_chk[399] =
|
|
808
949
|
return 0; \
|
809
950
|
} while (0)
|
810
951
|
|
811
|
-
#line
|
952
|
+
#line 953 "lex.linguist_yy.c"
|
812
953
|
|
813
|
-
#line
|
954
|
+
#line 955 "lex.linguist_yy.c"
|
814
955
|
|
815
956
|
#define INITIAL 0
|
816
|
-
#define
|
817
|
-
#define
|
818
|
-
#define
|
819
|
-
#define
|
820
|
-
#define
|
821
|
-
#define
|
822
|
-
#define
|
957
|
+
#define c_comment 1
|
958
|
+
#define xml_comment 2
|
959
|
+
#define haskell_comment 3
|
960
|
+
#define ocaml_comment 4
|
961
|
+
#define python_dcomment 5
|
962
|
+
#define python_scomment 6
|
963
|
+
#define roff_comment 7
|
964
|
+
#define punct 8
|
823
965
|
|
824
966
|
#ifndef YY_NO_UNISTD_H
|
825
967
|
/* Special case for "unistd.h", since it is non-ANSI. We include it way
|
@@ -859,6 +1001,17 @@ struct yyguts_t
|
|
859
1001
|
int yylineno_r;
|
860
1002
|
int yy_flex_debug_r;
|
861
1003
|
|
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
|
+
|
862
1015
|
char *yytext_r;
|
863
1016
|
int yy_more_flag;
|
864
1017
|
int yy_more_len;
|
@@ -1057,6 +1210,12 @@ YY_DECL
|
|
1057
1210
|
YY_USER_INIT;
|
1058
1211
|
#endif
|
1059
1212
|
|
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
|
+
|
1060
1219
|
if ( ! yyg->yy_start )
|
1061
1220
|
yyg->yy_start = 1; /* first start state */
|
1062
1221
|
|
@@ -1076,13 +1235,19 @@ YY_DECL
|
|
1076
1235
|
}
|
1077
1236
|
|
1078
1237
|
{
|
1079
|
-
#line
|
1238
|
+
#line 58 "tokenizer.l"
|
1080
1239
|
|
1081
1240
|
|
1082
|
-
#line
|
1241
|
+
#line 1242 "lex.linguist_yy.c"
|
1083
1242
|
|
1084
1243
|
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
|
1085
1244
|
{
|
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
|
+
}
|
1086
1251
|
yy_cp = yyg->yy_c_buf_p;
|
1087
1252
|
|
1088
1253
|
/* Support of yytext. */
|
@@ -1095,30 +1260,64 @@ YY_DECL
|
|
1095
1260
|
|
1096
1261
|
yy_current_state = yyg->yy_start;
|
1097
1262
|
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
|
+
|
1098
1267
|
yy_match:
|
1099
1268
|
do
|
1100
1269
|
{
|
1101
1270
|
YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
|
1102
|
-
if ( yy_accept[yy_current_state] )
|
1103
|
-
{
|
1104
|
-
yyg->yy_last_accepting_state = yy_current_state;
|
1105
|
-
yyg->yy_last_accepting_cpos = yy_cp;
|
1106
|
-
}
|
1107
1271
|
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
1108
1272
|
{
|
1109
1273
|
yy_current_state = (int) yy_def[yy_current_state];
|
1110
|
-
if ( yy_current_state >=
|
1274
|
+
if ( yy_current_state >= 210 )
|
1111
1275
|
yy_c = yy_meta[yy_c];
|
1112
1276
|
}
|
1113
1277
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
|
1278
|
+
*yyg->yy_state_ptr++ = yy_current_state;
|
1114
1279
|
++yy_cp;
|
1115
1280
|
}
|
1116
|
-
while ( yy_current_state !=
|
1117
|
-
yy_cp = yyg->yy_last_accepting_cpos;
|
1118
|
-
yy_current_state = yyg->yy_last_accepting_state;
|
1281
|
+
while ( yy_current_state != 209 );
|
1119
1282
|
|
1120
1283
|
yy_find_action:
|
1121
|
-
|
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
|
+
}
|
1122
1321
|
|
1123
1322
|
YY_DO_BEFORE_ACTION;
|
1124
1323
|
|
@@ -1126,17 +1325,10 @@ do_action: /* This label is used only to access EOF actions. */
|
|
1126
1325
|
|
1127
1326
|
switch ( yy_act )
|
1128
1327
|
{ /* beginning of action switch */
|
1129
|
-
case 0: /* must back up */
|
1130
|
-
/* undo the effects of YY_DO_BEFORE_ACTION */
|
1131
|
-
*yy_cp = yyg->yy_hold_char;
|
1132
|
-
yy_cp = yyg->yy_last_accepting_cpos;
|
1133
|
-
yy_current_state = yyg->yy_last_accepting_state;
|
1134
|
-
goto yy_find_action;
|
1135
|
-
|
1136
1328
|
case 1:
|
1137
1329
|
/* rule 1 can match eol */
|
1138
1330
|
YY_RULE_SETUP
|
1139
|
-
#line
|
1331
|
+
#line 60 "tokenizer.l"
|
1140
1332
|
{
|
1141
1333
|
const char *off = strrchr(yytext, ' ');
|
1142
1334
|
if (!off)
|
@@ -1150,7 +1342,7 @@ YY_RULE_SETUP
|
|
1150
1342
|
YY_BREAK
|
1151
1343
|
case 2:
|
1152
1344
|
YY_RULE_SETUP
|
1153
|
-
#line
|
1345
|
+
#line 71 "tokenizer.l"
|
1154
1346
|
{
|
1155
1347
|
const char *off = strrchr(yytext, '/');
|
1156
1348
|
if (!off)
|
@@ -1167,183 +1359,263 @@ YY_RULE_SETUP
|
|
1167
1359
|
}
|
1168
1360
|
YY_BREAK
|
1169
1361
|
case 3:
|
1362
|
+
/* rule 3 can match eol */
|
1170
1363
|
YY_RULE_SETUP
|
1171
|
-
#line
|
1172
|
-
{
|
1364
|
+
#line 86 "tokenizer.l"
|
1365
|
+
{ FEED_STATIC("COMMENT#"); return 1; }
|
1173
1366
|
YY_BREAK
|
1174
1367
|
case 4:
|
1368
|
+
/* rule 4 can match eol */
|
1175
1369
|
YY_RULE_SETUP
|
1176
|
-
#line
|
1177
|
-
{
|
1370
|
+
#line 87 "tokenizer.l"
|
1371
|
+
{ FEED_STATIC("COMMENT//!"); return 1; }
|
1178
1372
|
YY_BREAK
|
1179
|
-
/* See below for xml_comment start. */
|
1180
1373
|
case 5:
|
1374
|
+
/* rule 5 can match eol */
|
1181
1375
|
YY_RULE_SETUP
|
1182
|
-
#line
|
1183
|
-
{
|
1376
|
+
#line 88 "tokenizer.l"
|
1377
|
+
{ FEED_STATIC("COMMENT//"); return 1; }
|
1184
1378
|
YY_BREAK
|
1185
1379
|
case 6:
|
1380
|
+
/* rule 6 can match eol */
|
1186
1381
|
YY_RULE_SETUP
|
1187
|
-
#line
|
1188
|
-
{
|
1382
|
+
#line 89 "tokenizer.l"
|
1383
|
+
{ FEED_STATIC("COMMENT--"); return 1; }
|
1189
1384
|
YY_BREAK
|
1190
1385
|
case 7:
|
1386
|
+
/* rule 7 can match eol */
|
1191
1387
|
YY_RULE_SETUP
|
1192
|
-
#line
|
1193
|
-
{
|
1388
|
+
#line 90 "tokenizer.l"
|
1389
|
+
{ FEED_STATIC("COMMENT%"); return 1; }
|
1194
1390
|
YY_BREAK
|
1195
1391
|
case 8:
|
1392
|
+
/* rule 8 can match eol */
|
1196
1393
|
YY_RULE_SETUP
|
1197
|
-
#line
|
1198
|
-
{
|
1394
|
+
#line 91 "tokenizer.l"
|
1395
|
+
{ FEED_STATIC("COMMENT\""); return 1; }
|
1199
1396
|
YY_BREAK
|
1200
1397
|
case 9:
|
1201
1398
|
/* rule 9 can match eol */
|
1202
1399
|
YY_RULE_SETUP
|
1203
|
-
#line
|
1204
|
-
{
|
1400
|
+
#line 92 "tokenizer.l"
|
1401
|
+
{ FEED_STATIC("COMMENT;"); return 1; }
|
1205
1402
|
YY_BREAK
|
1206
1403
|
case 10:
|
1404
|
+
/* rule 10 can match eol */
|
1207
1405
|
YY_RULE_SETUP
|
1208
|
-
#line
|
1209
|
-
{
|
1406
|
+
#line 93 "tokenizer.l"
|
1407
|
+
{ FEED_STATIC("COMMENT.\\\""); return 1; }
|
1210
1408
|
YY_BREAK
|
1211
1409
|
case 11:
|
1410
|
+
/* rule 11 can match eol */
|
1212
1411
|
YY_RULE_SETUP
|
1213
|
-
#line
|
1214
|
-
{
|
1412
|
+
#line 94 "tokenizer.l"
|
1413
|
+
{ FEED_STATIC("COMMENT'\\\""); return 1; }
|
1215
1414
|
YY_BREAK
|
1216
1415
|
case 12:
|
1217
1416
|
YY_RULE_SETUP
|
1218
|
-
#line
|
1219
|
-
{
|
1417
|
+
#line 96 "tokenizer.l"
|
1418
|
+
{ FEED_STATIC("COMMENT/*"); return 1; }
|
1220
1419
|
YY_BREAK
|
1221
1420
|
case 13:
|
1222
1421
|
YY_RULE_SETUP
|
1223
|
-
#line
|
1224
|
-
{ BEGIN(
|
1422
|
+
#line 97 "tokenizer.l"
|
1423
|
+
{ FEED_STATIC("COMMENT/**"); BEGIN(c_comment); return 1; }
|
1225
1424
|
YY_BREAK
|
1226
1425
|
case 14:
|
1227
1426
|
YY_RULE_SETUP
|
1228
|
-
#line
|
1229
|
-
{ BEGIN(
|
1427
|
+
#line 98 "tokenizer.l"
|
1428
|
+
{ FEED_STATIC("COMMENT/*!"); BEGIN(c_comment); return 1; }
|
1230
1429
|
YY_BREAK
|
1231
1430
|
case 15:
|
1232
1431
|
YY_RULE_SETUP
|
1233
|
-
#line
|
1234
|
-
{ BEGIN(
|
1432
|
+
#line 99 "tokenizer.l"
|
1433
|
+
{ FEED_STATIC("COMMENT/*"); BEGIN(c_comment); return 1; }
|
1235
1434
|
YY_BREAK
|
1236
1435
|
case 16:
|
1237
1436
|
YY_RULE_SETUP
|
1238
|
-
#line
|
1239
|
-
{
|
1437
|
+
#line 100 "tokenizer.l"
|
1438
|
+
{ FEED_STATIC("COMMENT<!--"); BEGIN(xml_comment); return 1; }
|
1240
1439
|
YY_BREAK
|
1241
1440
|
case 17:
|
1242
1441
|
YY_RULE_SETUP
|
1243
|
-
#line
|
1244
|
-
{
|
1442
|
+
#line 101 "tokenizer.l"
|
1443
|
+
{ FEED_STATIC("COMMENT{-"); BEGIN(haskell_comment); return 1; }
|
1245
1444
|
YY_BREAK
|
1246
1445
|
case 18:
|
1247
1446
|
YY_RULE_SETUP
|
1248
|
-
#line
|
1249
|
-
{
|
1447
|
+
#line 102 "tokenizer.l"
|
1448
|
+
{ FEED_STATIC("COMMENT(*"); BEGIN(ocaml_comment); return 1; }
|
1250
1449
|
YY_BREAK
|
1251
1450
|
case 19:
|
1252
1451
|
YY_RULE_SETUP
|
1253
|
-
#line
|
1254
|
-
{
|
1452
|
+
#line 103 "tokenizer.l"
|
1453
|
+
{ FEED_STATIC("COMMENT\"\"\""); BEGIN(python_dcomment); return 1; }
|
1255
1454
|
YY_BREAK
|
1256
1455
|
case 20:
|
1257
1456
|
YY_RULE_SETUP
|
1258
|
-
#line
|
1259
|
-
{
|
1260
|
-
if (strcmp(yytext, "<!--") == 0) {
|
1261
|
-
BEGIN(xml_comment);
|
1262
|
-
} else {
|
1263
|
-
FEED_SGML();
|
1264
|
-
BEGIN(sgml);
|
1265
|
-
return 1;
|
1266
|
-
}
|
1267
|
-
}
|
1457
|
+
#line 104 "tokenizer.l"
|
1458
|
+
{ FEED_STATIC("COMMENT'''"); BEGIN(python_scomment); return 1; }
|
1268
1459
|
YY_BREAK
|
1269
1460
|
case 21:
|
1461
|
+
/* rule 21 can match eol */
|
1270
1462
|
YY_RULE_SETUP
|
1271
|
-
#line
|
1272
|
-
{
|
1463
|
+
#line 105 "tokenizer.l"
|
1464
|
+
{ FEED_STATIC("COMMENT.ig"); BEGIN(roff_comment); return 1; }
|
1273
1465
|
YY_BREAK
|
1274
1466
|
case 22:
|
1467
|
+
/* rule 22 can match eol */
|
1275
1468
|
YY_RULE_SETUP
|
1276
|
-
#line
|
1277
|
-
{
|
1469
|
+
#line 107 "tokenizer.l"
|
1470
|
+
{ /* nothing */ }
|
1278
1471
|
YY_BREAK
|
1279
1472
|
case 23:
|
1280
1473
|
YY_RULE_SETUP
|
1281
|
-
#line
|
1282
|
-
{
|
1474
|
+
#line 108 "tokenizer.l"
|
1475
|
+
{ BEGIN(INITIAL); }
|
1283
1476
|
YY_BREAK
|
1284
1477
|
case 24:
|
1285
1478
|
YY_RULE_SETUP
|
1286
|
-
#line
|
1287
|
-
{
|
1479
|
+
#line 109 "tokenizer.l"
|
1480
|
+
{ BEGIN(INITIAL); }
|
1288
1481
|
YY_BREAK
|
1289
1482
|
case 25:
|
1290
1483
|
YY_RULE_SETUP
|
1291
|
-
#line
|
1484
|
+
#line 110 "tokenizer.l"
|
1292
1485
|
{ BEGIN(INITIAL); }
|
1293
1486
|
YY_BREAK
|
1294
1487
|
case 26:
|
1295
|
-
/* rule 26 can match eol */
|
1296
1488
|
YY_RULE_SETUP
|
1297
|
-
#line
|
1298
|
-
{
|
1489
|
+
#line 111 "tokenizer.l"
|
1490
|
+
{ BEGIN(INITIAL); }
|
1299
1491
|
YY_BREAK
|
1300
1492
|
case 27:
|
1301
1493
|
YY_RULE_SETUP
|
1302
|
-
#line
|
1303
|
-
{
|
1494
|
+
#line 112 "tokenizer.l"
|
1495
|
+
{ BEGIN(INITIAL); }
|
1304
1496
|
YY_BREAK
|
1305
1497
|
case 28:
|
1306
1498
|
YY_RULE_SETUP
|
1307
|
-
#line
|
1308
|
-
{
|
1309
|
-
if (strncmp(yytext, "/*", 2) == 0) {
|
1310
|
-
if (yyleng >= 4 && strcmp(yytext + yyleng - 2, "*/") == 0) {
|
1311
|
-
/* nothing */
|
1312
|
-
} else {
|
1313
|
-
BEGIN(c_comment);
|
1314
|
-
}
|
1315
|
-
} else {
|
1316
|
-
FEED();
|
1317
|
-
return 1;
|
1318
|
-
}
|
1319
|
-
}
|
1499
|
+
#line 113 "tokenizer.l"
|
1500
|
+
{ BEGIN(INITIAL); }
|
1320
1501
|
YY_BREAK
|
1321
1502
|
case 29:
|
1503
|
+
/* rule 29 can match eol */
|
1322
1504
|
YY_RULE_SETUP
|
1323
|
-
#line
|
1324
|
-
{
|
1505
|
+
#line 114 "tokenizer.l"
|
1506
|
+
{ BEGIN(INITIAL); }
|
1325
1507
|
YY_BREAK
|
1326
1508
|
case 30:
|
1327
|
-
/* rule 30 can match eol */
|
1328
1509
|
YY_RULE_SETUP
|
1329
|
-
#line
|
1510
|
+
#line 116 "tokenizer.l"
|
1330
1511
|
{ /* nothing */ }
|
1331
1512
|
YY_BREAK
|
1332
1513
|
case 31:
|
1333
1514
|
YY_RULE_SETUP
|
1334
|
-
#line
|
1515
|
+
#line 117 "tokenizer.l"
|
1516
|
+
{ eat_until_unescaped('"'); }
|
1517
|
+
YY_BREAK
|
1518
|
+
case 32:
|
1519
|
+
YY_RULE_SETUP
|
1520
|
+
#line 118 "tokenizer.l"
|
1521
|
+
{ eat_until_unescaped('\''); }
|
1522
|
+
YY_BREAK
|
1523
|
+
case 33:
|
1524
|
+
YY_RULE_SETUP
|
1525
|
+
#line 119 "tokenizer.l"
|
1526
|
+
{ /* nothing */ }
|
1527
|
+
YY_BREAK
|
1528
|
+
case 34:
|
1529
|
+
YY_RULE_SETUP
|
1530
|
+
#line 121 "tokenizer.l"
|
1531
|
+
{ FEED(); return 1; }
|
1532
|
+
YY_BREAK
|
1533
|
+
case 35:
|
1534
|
+
YY_RULE_SETUP
|
1535
|
+
#line 122 "tokenizer.l"
|
1536
|
+
{ FEED(); return 1; }
|
1537
|
+
YY_BREAK
|
1538
|
+
case 36:
|
1539
|
+
YY_RULE_SETUP
|
1540
|
+
#line 123 "tokenizer.l"
|
1541
|
+
{ FEED(); return 1; }
|
1542
|
+
YY_BREAK
|
1543
|
+
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
|
+
YY_RULE_SETUP
|
1550
|
+
#line 125 "tokenizer.l"
|
1551
|
+
{ FEED(); BEGIN(INITIAL); return 1; }
|
1552
|
+
YY_BREAK
|
1553
|
+
case 38:
|
1554
|
+
YY_RULE_SETUP
|
1555
|
+
#line 126 "tokenizer.l"
|
1556
|
+
{ FEED(); BEGIN(INITIAL); return 1; }
|
1557
|
+
YY_BREAK
|
1558
|
+
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
|
+
YY_RULE_SETUP
|
1565
|
+
#line 127 "tokenizer.l"
|
1566
|
+
{ FEED(); BEGIN(INITIAL); return 1; }
|
1567
|
+
YY_BREAK
|
1568
|
+
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
|
+
YY_RULE_SETUP
|
1573
|
+
#line 128 "tokenizer.l"
|
1574
|
+
{ FEED(); BEGIN(INITIAL); return 1; }
|
1575
|
+
YY_BREAK
|
1576
|
+
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
|
+
YY_RULE_SETUP
|
1581
|
+
#line 129 "tokenizer.l"
|
1582
|
+
{ FEED(); BEGIN(INITIAL); return 1; }
|
1583
|
+
YY_BREAK
|
1584
|
+
case 42:
|
1585
|
+
YY_RULE_SETUP
|
1586
|
+
#line 130 "tokenizer.l"
|
1587
|
+
{ yymore(); BEGIN(punct); }
|
1588
|
+
YY_BREAK
|
1589
|
+
case 43:
|
1590
|
+
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; }
|
1597
|
+
YY_BREAK
|
1598
|
+
case 44:
|
1599
|
+
/* rule 44 can match eol */
|
1600
|
+
YY_RULE_SETUP
|
1601
|
+
#line 134 "tokenizer.l"
|
1602
|
+
{ /* nothing */ }
|
1603
|
+
YY_BREAK
|
1604
|
+
case 45:
|
1605
|
+
YY_RULE_SETUP
|
1606
|
+
#line 136 "tokenizer.l"
|
1335
1607
|
YY_FATAL_ERROR( "flex scanner jammed" );
|
1336
1608
|
YY_BREAK
|
1337
|
-
#line
|
1338
|
-
case YY_STATE_EOF(INITIAL):
|
1339
|
-
case YY_STATE_EOF(
|
1340
|
-
case YY_STATE_EOF(
|
1341
|
-
case YY_STATE_EOF(
|
1342
|
-
case YY_STATE_EOF(
|
1343
|
-
case YY_STATE_EOF(
|
1344
|
-
case YY_STATE_EOF(
|
1345
|
-
case YY_STATE_EOF(
|
1346
|
-
|
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();
|
1347
1619
|
|
1348
1620
|
case YY_END_OF_BUFFER:
|
1349
1621
|
{
|
@@ -1408,8 +1680,7 @@ case YY_STATE_EOF(python_scomment):
|
|
1408
1680
|
|
1409
1681
|
else
|
1410
1682
|
{
|
1411
|
-
yy_cp = yyg->
|
1412
|
-
yy_current_state = yyg->yy_last_accepting_state;
|
1683
|
+
yy_cp = yyg->yy_c_buf_p;
|
1413
1684
|
goto yy_find_action;
|
1414
1685
|
}
|
1415
1686
|
}
|
@@ -1536,38 +1807,8 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
|
|
1536
1807
|
while ( num_to_read <= 0 )
|
1537
1808
|
{ /* Not enough room in the buffer - grow it. */
|
1538
1809
|
|
1539
|
-
|
1540
|
-
|
1541
|
-
|
1542
|
-
int yy_c_buf_p_offset =
|
1543
|
-
(int) (yyg->yy_c_buf_p - b->yy_ch_buf);
|
1544
|
-
|
1545
|
-
if ( b->yy_is_our_buffer )
|
1546
|
-
{
|
1547
|
-
int new_size = b->yy_buf_size * 2;
|
1548
|
-
|
1549
|
-
if ( new_size <= 0 )
|
1550
|
-
b->yy_buf_size += b->yy_buf_size / 8;
|
1551
|
-
else
|
1552
|
-
b->yy_buf_size *= 2;
|
1553
|
-
|
1554
|
-
b->yy_ch_buf = (char *)
|
1555
|
-
/* Include room in for 2 EOB chars. */
|
1556
|
-
yyrealloc( (void *) b->yy_ch_buf,
|
1557
|
-
(yy_size_t) (b->yy_buf_size + 2) , yyscanner );
|
1558
|
-
}
|
1559
|
-
else
|
1560
|
-
/* Can't grow it, we don't own it. */
|
1561
|
-
b->yy_ch_buf = NULL;
|
1562
|
-
|
1563
|
-
if ( ! b->yy_ch_buf )
|
1564
|
-
YY_FATAL_ERROR(
|
1565
|
-
"fatal error - scanner input buffer overflow" );
|
1566
|
-
|
1567
|
-
yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
|
1568
|
-
|
1569
|
-
num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
|
1570
|
-
number_to_move - 1;
|
1810
|
+
YY_FATAL_ERROR(
|
1811
|
+
"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
|
1571
1812
|
|
1572
1813
|
}
|
1573
1814
|
|
@@ -1631,21 +1872,20 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
|
|
1631
1872
|
yy_current_state = yyg->yy_start;
|
1632
1873
|
yy_current_state += YY_AT_BOL();
|
1633
1874
|
|
1875
|
+
yyg->yy_state_ptr = yyg->yy_state_buf;
|
1876
|
+
*yyg->yy_state_ptr++ = yy_current_state;
|
1877
|
+
|
1634
1878
|
for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp )
|
1635
1879
|
{
|
1636
1880
|
YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
|
1637
|
-
if ( yy_accept[yy_current_state] )
|
1638
|
-
{
|
1639
|
-
yyg->yy_last_accepting_state = yy_current_state;
|
1640
|
-
yyg->yy_last_accepting_cpos = yy_cp;
|
1641
|
-
}
|
1642
1881
|
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
1643
1882
|
{
|
1644
1883
|
yy_current_state = (int) yy_def[yy_current_state];
|
1645
|
-
if ( yy_current_state >=
|
1884
|
+
if ( yy_current_state >= 210 )
|
1646
1885
|
yy_c = yy_meta[yy_c];
|
1647
1886
|
}
|
1648
1887
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
|
1888
|
+
*yyg->yy_state_ptr++ = yy_current_state;
|
1649
1889
|
}
|
1650
1890
|
|
1651
1891
|
return yy_current_state;
|
@@ -1660,22 +1900,18 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
|
|
1660
1900
|
{
|
1661
1901
|
int yy_is_jam;
|
1662
1902
|
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */
|
1663
|
-
char *yy_cp = yyg->yy_c_buf_p;
|
1664
1903
|
|
1665
1904
|
YY_CHAR yy_c = 1;
|
1666
|
-
if ( yy_accept[yy_current_state] )
|
1667
|
-
{
|
1668
|
-
yyg->yy_last_accepting_state = yy_current_state;
|
1669
|
-
yyg->yy_last_accepting_cpos = yy_cp;
|
1670
|
-
}
|
1671
1905
|
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
1672
1906
|
{
|
1673
1907
|
yy_current_state = (int) yy_def[yy_current_state];
|
1674
|
-
if ( yy_current_state >=
|
1908
|
+
if ( yy_current_state >= 210 )
|
1675
1909
|
yy_c = yy_meta[yy_c];
|
1676
1910
|
}
|
1677
1911
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
|
1678
|
-
yy_is_jam = (yy_current_state ==
|
1912
|
+
yy_is_jam = (yy_current_state == 209);
|
1913
|
+
if ( ! yy_is_jam )
|
1914
|
+
*yyg->yy_state_ptr++ = yy_current_state;
|
1679
1915
|
|
1680
1916
|
(void)yyg;
|
1681
1917
|
return yy_is_jam ? 0 : yy_current_state;
|
@@ -2373,6 +2609,11 @@ static int yy_init_globals (yyscan_t yyscanner)
|
|
2373
2609
|
yyg->yy_start_stack_depth = 0;
|
2374
2610
|
yyg->yy_start_stack = NULL;
|
2375
2611
|
|
2612
|
+
yyg->yy_state_buf = 0;
|
2613
|
+
yyg->yy_state_ptr = 0;
|
2614
|
+
yyg->yy_full_match = 0;
|
2615
|
+
yyg->yy_lp = 0;
|
2616
|
+
|
2376
2617
|
/* Defined in main.c */
|
2377
2618
|
#ifdef YY_STDINIT
|
2378
2619
|
yyin = stdin;
|
@@ -2408,6 +2649,9 @@ int yylex_destroy (yyscan_t yyscanner)
|
|
2408
2649
|
yyfree( yyg->yy_start_stack , yyscanner );
|
2409
2650
|
yyg->yy_start_stack = NULL;
|
2410
2651
|
|
2652
|
+
yyfree ( yyg->yy_state_buf , yyscanner);
|
2653
|
+
yyg->yy_state_buf = NULL;
|
2654
|
+
|
2411
2655
|
/* Reset the globals. This is important in a non-reentrant scanner so the next time
|
2412
2656
|
* yylex() is called, initialization will occur. */
|
2413
2657
|
yy_init_globals( yyscanner);
|
@@ -2476,7 +2720,7 @@ void yyfree (void * ptr , yyscan_t yyscanner)
|
|
2476
2720
|
|
2477
2721
|
#define YYTABLES_NAME "yytables"
|
2478
2722
|
|
2479
|
-
#line
|
2723
|
+
#line 136 "tokenizer.l"
|
2480
2724
|
|
2481
2725
|
|
2482
2726
|
|