Commit
Author: Michael Davis [mcarsondavis@gmail.com]
Hash: 612e2616320702b81b04b98c7ae49d1e500d5738
Timestamp: Sun, 30 Jul 2023 19:40:45 +0000 (1 year ago)

+1814 -845 +/-3 browse
Generate parser
1diff --git a/src/grammar.json b/src/grammar.json
2index f8c358a..e431283 100644
3--- a/src/grammar.json
4+++ b/src/grammar.json
5 @@ -7,23 +7,32 @@
6 {
7 "type": "REPEAT",
8 "content": {
9- "type": "SEQ",
10+ "type": "CHOICE",
11 "members": [
12 {
13- "type": "CHOICE",
14+ "type": "SYMBOL",
15+ "name": "block"
16+ },
17+ {
18+ "type": "SEQ",
19 "members": [
20 {
21- "type": "SYMBOL",
22- "name": "_line"
23+ "type": "CHOICE",
24+ "members": [
25+ {
26+ "type": "SYMBOL",
27+ "name": "_line"
28+ },
29+ {
30+ "type": "BLANK"
31+ }
32+ ]
33 },
34 {
35- "type": "BLANK"
36+ "type": "PATTERN",
37+ "value": "\\r?\\n"
38 }
39 ]
40- },
41- {
42- "type": "PATTERN",
43- "value": "\\r?\\n"
44 }
45 ]
46 }
47 @@ -47,10 +56,6 @@
48 "members": [
49 {
50 "type": "SYMBOL",
51- "name": "command"
52- },
53- {
54- "type": "SYMBOL",
55 "name": "file_change"
56 },
57 {
58 @@ -91,6 +96,177 @@
59 }
60 ]
61 },
62+ "block": {
63+ "type": "PREC_RIGHT",
64+ "value": 0,
65+ "content": {
66+ "type": "SEQ",
67+ "members": [
68+ {
69+ "type": "SYMBOL",
70+ "name": "command"
71+ },
72+ {
73+ "type": "PATTERN",
74+ "value": "\\r?\\n"
75+ },
76+ {
77+ "type": "REPEAT",
78+ "content": {
79+ "type": "SEQ",
80+ "members": [
81+ {
82+ "type": "CHOICE",
83+ "members": [
84+ {
85+ "type": "SYMBOL",
86+ "name": "file_change"
87+ },
88+ {
89+ "type": "SYMBOL",
90+ "name": "binary_change"
91+ },
92+ {
93+ "type": "SYMBOL",
94+ "name": "index"
95+ },
96+ {
97+ "type": "SYMBOL",
98+ "name": "similarity"
99+ }
100+ ]
101+ },
102+ {
103+ "type": "PATTERN",
104+ "value": "\\r?\\n"
105+ }
106+ ]
107+ }
108+ },
109+ {
110+ "type": "CHOICE",
111+ "members": [
112+ {
113+ "type": "SEQ",
114+ "members": [
115+ {
116+ "type": "SYMBOL",
117+ "name": "old_file"
118+ },
119+ {
120+ "type": "PATTERN",
121+ "value": "\\r?\\n"
122+ },
123+ {
124+ "type": "SYMBOL",
125+ "name": "new_file"
126+ },
127+ {
128+ "type": "PATTERN",
129+ "value": "\\r?\\n"
130+ },
131+ {
132+ "type": "SYMBOL",
133+ "name": "hunks"
134+ }
135+ ]
136+ },
137+ {
138+ "type": "BLANK"
139+ }
140+ ]
141+ }
142+ ]
143+ }
144+ },
145+ "hunks": {
146+ "type": "PREC_RIGHT",
147+ "value": 0,
148+ "content": {
149+ "type": "REPEAT1",
150+ "content": {
151+ "type": "SYMBOL",
152+ "name": "hunk"
153+ }
154+ }
155+ },
156+ "hunk": {
157+ "type": "PREC_RIGHT",
158+ "value": 0,
159+ "content": {
160+ "type": "SEQ",
161+ "members": [
162+ {
163+ "type": "FIELD",
164+ "name": "location",
165+ "content": {
166+ "type": "SYMBOL",
167+ "name": "location"
168+ }
169+ },
170+ {
171+ "type": "PATTERN",
172+ "value": "\\r?\\n"
173+ },
174+ {
175+ "type": "CHOICE",
176+ "members": [
177+ {
178+ "type": "FIELD",
179+ "name": "changes",
180+ "content": {
181+ "type": "SYMBOL",
182+ "name": "changes"
183+ }
184+ },
185+ {
186+ "type": "BLANK"
187+ }
188+ ]
189+ }
190+ ]
191+ }
192+ },
193+ "changes": {
194+ "type": "PREC_RIGHT",
195+ "value": 0,
196+ "content": {
197+ "type": "REPEAT1",
198+ "content": {
199+ "type": "SEQ",
200+ "members": [
201+ {
202+ "type": "CHOICE",
203+ "members": [
204+ {
205+ "type": "SYMBOL",
206+ "name": "addition"
207+ },
208+ {
209+ "type": "SYMBOL",
210+ "name": "deletion"
211+ },
212+ {
213+ "type": "SYMBOL",
214+ "name": "context"
215+ }
216+ ]
217+ },
218+ {
219+ "type": "PREC_RIGHT",
220+ "value": 0,
221+ "content": {
222+ "type": "REPEAT1",
223+ "content": {
224+ "type": "PATTERN",
225+ "value": "\\r?\\n"
226+ }
227+ }
228+ }
229+ ]
230+ }
231+ }
232+ },
233 "command": {
234 "type": "SEQ",
235 "members": [
236 diff --git a/src/node-types.json b/src/node-types.json
237index d16b9bd..95779a6 100644
238--- a/src/node-types.json
239+++ b/src/node-types.json
240 @@ -20,6 +20,72 @@
241 }
242 },
243 {
244+ "type": "block",
245+ "named": true,
246+ "fields": {},
247+ "children": {
248+ "multiple": true,
249+ "required": true,
250+ "types": [
251+ {
252+ "type": "binary_change",
253+ "named": true
254+ },
255+ {
256+ "type": "command",
257+ "named": true
258+ },
259+ {
260+ "type": "file_change",
261+ "named": true
262+ },
263+ {
264+ "type": "hunks",
265+ "named": true
266+ },
267+ {
268+ "type": "index",
269+ "named": true
270+ },
271+ {
272+ "type": "new_file",
273+ "named": true
274+ },
275+ {
276+ "type": "old_file",
277+ "named": true
278+ },
279+ {
280+ "type": "similarity",
281+ "named": true
282+ }
283+ ]
284+ }
285+ },
286+ {
287+ "type": "changes",
288+ "named": true,
289+ "fields": {},
290+ "children": {
291+ "multiple": true,
292+ "required": true,
293+ "types": [
294+ {
295+ "type": "addition",
296+ "named": true
297+ },
298+ {
299+ "type": "context",
300+ "named": true
301+ },
302+ {
303+ "type": "deletion",
304+ "named": true
305+ }
306+ ]
307+ }
308+ },
309+ {
310 "type": "command",
311 "named": true,
312 "fields": {},
313 @@ -64,6 +130,47 @@
314 "fields": {}
315 },
316 {
317+ "type": "hunk",
318+ "named": true,
319+ "fields": {
320+ "changes": {
321+ "multiple": false,
322+ "required": false,
323+ "types": [
324+ {
325+ "type": "changes",
326+ "named": true
327+ }
328+ ]
329+ },
330+ "location": {
331+ "multiple": false,
332+ "required": true,
333+ "types": [
334+ {
335+ "type": "location",
336+ "named": true
337+ }
338+ ]
339+ }
340+ }
341+ },
342+ {
343+ "type": "hunks",
344+ "named": true,
345+ "fields": {},
346+ "children": {
347+ "multiple": true,
348+ "required": true,
349+ "types": [
350+ {
351+ "type": "hunk",
352+ "named": true
353+ }
354+ ]
355+ }
356+ },
357+ {
358 "type": "index",
359 "named": true,
360 "fields": {},
361 @@ -154,7 +261,7 @@
362 "named": true
363 },
364 {
365- "type": "command",
366+ "type": "block",
367 "named": true
368 },
369 {
370 diff --git a/src/parser.c b/src/parser.c
371index aa51b1e..92e7c3c 100644
372--- a/src/parser.c
373+++ b/src/parser.c
374 @@ -6,15 +6,15 @@
375 #endif
376
377 #define LANGUAGE_VERSION 14
378- #define STATE_COUNT 53
379+ #define STATE_COUNT 83
380 #define LARGE_STATE_COUNT 4
381- #define SYMBOL_COUNT 50
382+ #define SYMBOL_COUNT 58
383 #define ALIAS_COUNT 0
384 #define TOKEN_COUNT 34
385 #define EXTERNAL_TOKEN_COUNT 0
386- #define FIELD_COUNT 1
387- #define MAX_ALIAS_SEQUENCE_LENGTH 6
388- #define PRODUCTION_ID_COUNT 2
389+ #define FIELD_COUNT 3
390+ #define MAX_ALIAS_SEQUENCE_LENGTH 8
391+ #define PRODUCTION_ID_COUNT 4
392
393 enum {
394 aux_sym_source_token1 = 1,
395 @@ -52,20 +52,28 @@ enum {
396 sym_commit = 33,
397 sym_source = 34,
398 sym__line = 35,
399- sym_command = 36,
400- sym_file_change = 37,
401- sym_binary_change = 38,
402- sym_index = 39,
403- sym_similarity = 40,
404- sym_old_file = 41,
405- sym_new_file = 42,
406- sym_location = 43,
407- sym_addition = 44,
408- sym_deletion = 45,
409- sym_filename = 46,
410- sym_mode = 47,
411- aux_sym_source_repeat1 = 48,
412- aux_sym_filename_repeat1 = 49,
413+ sym_block = 36,
414+ sym_hunks = 37,
415+ sym_hunk = 38,
416+ sym_changes = 39,
417+ sym_command = 40,
418+ sym_file_change = 41,
419+ sym_binary_change = 42,
420+ sym_index = 43,
421+ sym_similarity = 44,
422+ sym_old_file = 45,
423+ sym_new_file = 46,
424+ sym_location = 47,
425+ sym_addition = 48,
426+ sym_deletion = 49,
427+ sym_filename = 50,
428+ sym_mode = 51,
429+ aux_sym_source_repeat1 = 52,
430+ aux_sym_block_repeat1 = 53,
431+ aux_sym_hunks_repeat1 = 54,
432+ aux_sym_changes_repeat1 = 55,
433+ aux_sym_changes_repeat2 = 56,
434+ aux_sym_filename_repeat1 = 57,
435 };
436
437 static const char * const ts_symbol_names[] = {
438 @@ -105,6 +113,10 @@ static const char * const ts_symbol_names[] = {
439 [sym_commit] = "commit",
440 [sym_source] = "source",
441 [sym__line] = "_line",
442+ [sym_block] = "block",
443+ [sym_hunks] = "hunks",
444+ [sym_hunk] = "hunk",
445+ [sym_changes] = "changes",
446 [sym_command] = "command",
447 [sym_file_change] = "file_change",
448 [sym_binary_change] = "binary_change",
449 @@ -118,6 +130,10 @@ static const char * const ts_symbol_names[] = {
450 [sym_filename] = "filename",
451 [sym_mode] = "mode",
452 [aux_sym_source_repeat1] = "source_repeat1",
453+ [aux_sym_block_repeat1] = "block_repeat1",
454+ [aux_sym_hunks_repeat1] = "hunks_repeat1",
455+ [aux_sym_changes_repeat1] = "changes_repeat1",
456+ [aux_sym_changes_repeat2] = "changes_repeat2",
457 [aux_sym_filename_repeat1] = "filename_repeat1",
458 };
459
460 @@ -158,6 +174,10 @@ static const TSSymbol ts_symbol_map[] = {
461 [sym_commit] = sym_commit,
462 [sym_source] = sym_source,
463 [sym__line] = sym__line,
464+ [sym_block] = sym_block,
465+ [sym_hunks] = sym_hunks,
466+ [sym_hunk] = sym_hunk,
467+ [sym_changes] = sym_changes,
468 [sym_command] = sym_command,
469 [sym_file_change] = sym_file_change,
470 [sym_binary_change] = sym_binary_change,
471 @@ -171,6 +191,10 @@ static const TSSymbol ts_symbol_map[] = {
472 [sym_filename] = sym_filename,
473 [sym_mode] = sym_mode,
474 [aux_sym_source_repeat1] = aux_sym_source_repeat1,
475+ [aux_sym_block_repeat1] = aux_sym_block_repeat1,
476+ [aux_sym_hunks_repeat1] = aux_sym_hunks_repeat1,
477+ [aux_sym_changes_repeat1] = aux_sym_changes_repeat1,
478+ [aux_sym_changes_repeat2] = aux_sym_changes_repeat2,
479 [aux_sym_filename_repeat1] = aux_sym_filename_repeat1,
480 };
481
482 @@ -319,6 +343,22 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
483 .visible = false,
484 .named = true,
485 },
486+ [sym_block] = {
487+ .visible = true,
488+ .named = true,
489+ },
490+ [sym_hunks] = {
491+ .visible = true,
492+ .named = true,
493+ },
494+ [sym_hunk] = {
495+ .visible = true,
496+ .named = true,
497+ },
498+ [sym_changes] = {
499+ .visible = true,
500+ .named = true,
501+ },
502 [sym_command] = {
503 .visible = true,
504 .named = true,
505 @@ -371,6 +411,22 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
506 .visible = false,
507 .named = false,
508 },
509+ [aux_sym_block_repeat1] = {
510+ .visible = false,
511+ .named = false,
512+ },
513+ [aux_sym_hunks_repeat1] = {
514+ .visible = false,
515+ .named = false,
516+ },
517+ [aux_sym_changes_repeat1] = {
518+ .visible = false,
519+ .named = false,
520+ },
521+ [aux_sym_changes_repeat2] = {
522+ .visible = false,
523+ .named = false,
524+ },
525 [aux_sym_filename_repeat1] = {
526 .visible = false,
527 .named = false,
528 @@ -378,21 +434,32 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
529 };
530
531 enum {
532- field_score = 1,
533+ field_changes = 1,
534+ field_location = 2,
535+ field_score = 3,
536 };
537
538 static const char * const ts_field_names[] = {
539 [0] = NULL,
540+ [field_changes] = "changes",
541+ [field_location] = "location",
542 [field_score] = "score",
543 };
544
545 static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
546 [1] = {.index = 0, .length = 1},
547+ [2] = {.index = 1, .length = 1},
548+ [3] = {.index = 2, .length = 2},
549 };
550
551 static const TSFieldMapEntry ts_field_map_entries[] = {
552 [0] =
553 {field_score, 2},
554+ [1] =
555+ {field_location, 0},
556+ [2] =
557+ {field_changes, 2},
558+ {field_location, 0},
559 };
560
561 static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = {
562 @@ -416,15 +483,15 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
563 [9] = 9,
564 [10] = 10,
565 [11] = 11,
566- [12] = 8,
567+ [12] = 12,
568 [13] = 13,
569 [14] = 14,
570 [15] = 15,
571- [16] = 7,
572+ [16] = 16,
573 [17] = 17,
574 [18] = 18,
575- [19] = 8,
576- [20] = 7,
577+ [19] = 19,
578+ [20] = 20,
579 [21] = 21,
580 [22] = 22,
581 [23] = 23,
582 @@ -435,15 +502,15 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
583 [28] = 28,
584 [29] = 29,
585 [30] = 30,
586- [31] = 31,
587+ [31] = 24,
588 [32] = 32,
589- [33] = 33,
590+ [33] = 25,
591 [34] = 34,
592 [35] = 35,
593- [36] = 36,
594+ [36] = 25,
595 [37] = 37,
596 [38] = 38,
597- [39] = 39,
598+ [39] = 24,
599 [40] = 40,
600 [41] = 41,
601 [42] = 42,
602 @@ -457,6 +524,36 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
603 [50] = 50,
604 [51] = 51,
605 [52] = 52,
606+ [53] = 53,
607+ [54] = 54,
608+ [55] = 55,
609+ [56] = 56,
610+ [57] = 57,
611+ [58] = 58,
612+ [59] = 59,
613+ [60] = 60,
614+ [61] = 61,
615+ [62] = 62,
616+ [63] = 63,
617+ [64] = 64,
618+ [65] = 65,
619+ [66] = 66,
620+ [67] = 67,
621+ [68] = 68,
622+ [69] = 69,
623+ [70] = 70,
624+ [71] = 71,
625+ [72] = 72,
626+ [73] = 73,
627+ [74] = 74,
628+ [75] = 75,
629+ [76] = 76,
630+ [77] = 77,
631+ [78] = 78,
632+ [79] = 79,
633+ [80] = 80,
634+ [81] = 81,
635+ [82] = 82,
636 };
637
638 static bool ts_lex(TSLexer *lexer, TSStateId state) {
639 @@ -464,227 +561,228 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
640 eof = lexer->eof(lexer);
641 switch (state) {
642 case 0:
643- if (eof) ADVANCE(86);
644- if (lookahead == '\n') ADVANCE(87);
645+ if (eof) ADVANCE(89);
646+ if (lookahead == '\n') ADVANCE(90);
647 if (lookahead == '\r') ADVANCE(1);
648- if (lookahead == '%') ADVANCE(147);
649- if (lookahead == '+') ADVANCE(154);
650- if (lookahead == '-') ADVANCE(157);
651- if (lookahead == '.') ADVANCE(3);
652- if (lookahead == '@') ADVANCE(4);
653- if (lookahead == 'B') ADVANCE(37);
654- if (lookahead == 'a') ADVANCE(53);
655- if (lookahead == 'd') ADVANCE(16);
656- if (lookahead == 'f') ADVANCE(35);
657- if (lookahead == 'i') ADVANCE(55);
658- if (lookahead == 'm') ADVANCE(60);
659- if (lookahead == 'n') ADVANCE(17);
660- if (lookahead == 'r') ADVANCE(27);
661- if (lookahead == 's') ADVANCE(36);
662- if (lookahead == 't') ADVANCE(58);
663- if (('b' <= lookahead && lookahead <= 'e')) ADVANCE(80);
664+ if (lookahead == '%') ADVANCE(150);
665+ if (lookahead == '+') ADVANCE(158);
666+ if (lookahead == '-') ADVANCE(161);
667+ if (lookahead == '.') ADVANCE(5);
668+ if (lookahead == '@') ADVANCE(6);
669+ if (lookahead == 'B') ADVANCE(39);
670+ if (lookahead == 'a') ADVANCE(55);
671+ if (lookahead == 'd') ADVANCE(18);
672+ if (lookahead == 'f') ADVANCE(37);
673+ if (lookahead == 'i') ADVANCE(57);
674+ if (lookahead == 'm') ADVANCE(62);
675+ if (lookahead == 'n') ADVANCE(19);
676+ if (lookahead == 'r') ADVANCE(29);
677+ if (lookahead == 's') ADVANCE(38);
678+ if (lookahead == 't') ADVANCE(60);
679+ if (('b' <= lookahead && lookahead <= 'e')) ADVANCE(82);
680 if (('\t' <= lookahead && lookahead <= '\f') ||
681- lookahead == ' ') SKIP(81)
682- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(117);
683+ lookahead == ' ') SKIP(83)
684+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120);
685 END_STATE();
686 case 1:
687- if (lookahead == '\n') ADVANCE(87);
688+ if (lookahead == '\n') ADVANCE(90);
689 END_STATE();
690 case 2:
691- if (lookahead == '-') ADVANCE(34);
692- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(196);
693+ if (lookahead == '+') ADVANCE(3);
694+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(200);
695 END_STATE();
696 case 3:
697- if (lookahead == '.') ADVANCE(104);
698+ if (lookahead == '+') ADVANCE(152);
699 END_STATE();
700 case 4:
701- if (lookahead == '@') ADVANCE(150);
702+ if (lookahead == '-') ADVANCE(36);
703+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(200);
704 END_STATE();
705 case 5:
706- if (lookahead == '@') ADVANCE(151);
707+ if (lookahead == '.') ADVANCE(107);
708 END_STATE();
709 case 6:
710- if (lookahead == 'a') ADVANCE(61);
711+ if (lookahead == '@') ADVANCE(154);
712 END_STATE();
713 case 7:
714- if (lookahead == 'a') ADVANCE(205);
715- if (lookahead == '\t' ||
716- lookahead == ' ') SKIP(7)
717- if (lookahead == 11 ||
718- lookahead == '\f') ADVANCE(198);
719- if (lookahead != 0 &&
720- (lookahead < '\n' || '\r' < lookahead)) ADVANCE(208);
721+ if (lookahead == '@') ADVANCE(155);
722 END_STATE();
723 case 8:
724- if (lookahead == 'a') ADVANCE(52);
725+ if (lookahead == 'a') ADVANCE(63);
726 END_STATE();
727 case 9:
728- if (lookahead == 'a') ADVANCE(63);
729+ if (lookahead == 'a') ADVANCE(209);
730+ if (lookahead == '\t' ||
731+ lookahead == ' ') SKIP(9)
732+ if (lookahead == 11 ||
733+ lookahead == '\f') ADVANCE(202);
734+ if (lookahead != 0 &&
735+ (lookahead < '\n' || '\r' < lookahead)) ADVANCE(212);
736 END_STATE();
737 case 10:
738- if (lookahead == 'd') ADVANCE(99);
739+ if (lookahead == 'a') ADVANCE(54);
740 END_STATE();
741 case 11:
742- if (lookahead == 'd') ADVANCE(91);
743+ if (lookahead == 'a') ADVANCE(65);
744 END_STATE();
745 case 12:
746- if (lookahead == 'd') ADVANCE(204);
747- if (lookahead == '\t' ||
748- lookahead == ' ') SKIP(12)
749- if (lookahead == 11 ||
750- lookahead == '\f') ADVANCE(199);
751- if (lookahead != 0 &&
752- (lookahead < '\n' || '\r' < lookahead)) ADVANCE(208);
753+ if (lookahead == 'd') ADVANCE(102);
754 END_STATE();
755 case 13:
756- if (lookahead == 'd') ADVANCE(21);
757+ if (lookahead == 'd') ADVANCE(94);
758 END_STATE();
759 case 14:
760- if (lookahead == 'd') ADVANCE(22);
761+ if (lookahead == 'd') ADVANCE(208);
762+ if (lookahead == '\t' ||
763+ lookahead == ' ') SKIP(14)
764+ if (lookahead == 11 ||
765+ lookahead == '\f') ADVANCE(203);
766+ if (lookahead != 0 &&
767+ (lookahead < '\n' || '\r' < lookahead)) ADVANCE(212);
768 END_STATE();
769 case 15:
770- if (lookahead == 'd') ADVANCE(26);
771+ if (lookahead == 'd') ADVANCE(23);
772 END_STATE();
773 case 16:
774- if (lookahead == 'e') ADVANCE(45);
775- if (lookahead == 'i') ADVANCE(30);
776- if (('0' <= lookahead && lookahead <= '9') ||
777- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
778+ if (lookahead == 'd') ADVANCE(24);
779 END_STATE();
780 case 17:
781- if (lookahead == 'e') ADVANCE(68);
782+ if (lookahead == 'd') ADVANCE(28);
783 END_STATE();
784 case 18:
785- if (lookahead == 'e') ADVANCE(91);
786+ if (lookahead == 'e') ADVANCE(47);
787+ if (lookahead == 'i') ADVANCE(32);
788+ if (('0' <= lookahead && lookahead <= '9') ||
789+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(81);
790 END_STATE();
791 case 19:
792- if (lookahead == 'e') ADVANCE(67);
793+ if (lookahead == 'e') ADVANCE(70);
794 END_STATE();
795 case 20:
796- if (lookahead == 'e') ADVANCE(93);
797+ if (lookahead == 'e') ADVANCE(94);
798 END_STATE();
799 case 21:
800 if (lookahead == 'e') ADVANCE(69);
801 END_STATE();
802 case 22:
803- if (lookahead == 'e') ADVANCE(94);
804+ if (lookahead == 'e') ADVANCE(96);
805 END_STATE();
806 case 23:
807- if (lookahead == 'e') ADVANCE(92);
808+ if (lookahead == 'e') ADVANCE(71);
809 END_STATE();
810 case 24:
811- if (lookahead == 'e') ADVANCE(64);
812+ if (lookahead == 'e') ADVANCE(97);
813 END_STATE();
814 case 25:
815- if (lookahead == 'e') ADVANCE(62);
816+ if (lookahead == 'e') ADVANCE(95);
817 END_STATE();
818 case 26:
819- if (lookahead == 'e') ADVANCE(70);
820+ if (lookahead == 'e') ADVANCE(66);
821 END_STATE();
822 case 27:
823- if (lookahead == 'e') ADVANCE(56);
824+ if (lookahead == 'e') ADVANCE(64);
825 END_STATE();
826 case 28:
827- if (lookahead == 'e') ADVANCE(11);
828+ if (lookahead == 'e') ADVANCE(72);
829 END_STATE();
830 case 29:
831- if (lookahead == 'f') ADVANCE(89);
832+ if (lookahead == 'e') ADVANCE(58);
833 END_STATE();
834 case 30:
835- if (lookahead == 'f') ADVANCE(29);
836+ if (lookahead == 'e') ADVANCE(13);
837 END_STATE();
838 case 31:
839- if (lookahead == 'f') ADVANCE(44);
840- if (lookahead == '\t' ||
841- lookahead == 11 ||
842- lookahead == '\f' ||
843- lookahead == ' ') SKIP(31)
844- if (('0' <= lookahead && lookahead <= '9') ||
845- ('a' <= lookahead && lookahead <= 'e')) ADVANCE(80);
846+ if (lookahead == 'f') ADVANCE(92);
847 END_STATE();
848 case 32:
849- if (lookahead == 'f') ADVANCE(33);
850+ if (lookahead == 'f') ADVANCE(31);
851 END_STATE();
852 case 33:
853- if (lookahead == 'f') ADVANCE(25);
854+ if (lookahead == 'f') ADVANCE(46);
855+ if (lookahead == '\t' ||
856+ lookahead == 11 ||
857+ lookahead == '\f' ||
858+ lookahead == ' ') SKIP(33)
859+ if (('0' <= lookahead && lookahead <= '9') ||
860+ ('a' <= lookahead && lookahead <= 'e')) ADVANCE(82);
861 END_STATE();
862 case 34:
863- if (lookahead == 'g') ADVANCE(40);
864+ if (lookahead == 'f') ADVANCE(35);
865 END_STATE();
866 case 35:
867- if (lookahead == 'i') ADVANCE(46);
868- if (lookahead == 'r') ADVANCE(59);
869- if (('0' <= lookahead && lookahead <= '9') ||
870- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
871+ if (lookahead == 'f') ADVANCE(27);
872 END_STATE();
873 case 36:
874- if (lookahead == 'i') ADVANCE(51);
875+ if (lookahead == 'g') ADVANCE(42);
876 END_STATE();
877 case 37:
878- if (lookahead == 'i') ADVANCE(54);
879+ if (lookahead == 'i') ADVANCE(48);
880+ if (lookahead == 'r') ADVANCE(61);
881+ if (('0' <= lookahead && lookahead <= '9') ||
882+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(81);
883 END_STATE();
884 case 38:
885- if (lookahead == 'i') ADVANCE(49);
886+ if (lookahead == 'i') ADVANCE(53);
887 END_STATE();
888 case 39:
889- if (lookahead == 'i') ADVANCE(66);
890+ if (lookahead == 'i') ADVANCE(56);
891 END_STATE();
892 case 40:
893- if (lookahead == 'i') ADVANCE(65);
894+ if (lookahead == 'i') ADVANCE(51);
895 END_STATE();
896 case 41:
897- if (lookahead == 'i') ADVANCE(32);
898+ if (lookahead == 'i') ADVANCE(68);
899 END_STATE();
900 case 42:
901- if (lookahead == 'i') ADVANCE(32);
902- if (('0' <= lookahead && lookahead <= '9') ||
903- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
904+ if (lookahead == 'i') ADVANCE(67);
905 END_STATE();
906 case 43:
907- if (lookahead == 'i') ADVANCE(47);
908- if (lookahead == 'r') ADVANCE(59);
909+ if (lookahead == 'i') ADVANCE(34);
910 END_STATE();
911 case 44:
912- if (lookahead == 'i') ADVANCE(48);
913+ if (lookahead == 'i') ADVANCE(34);
914 if (('0' <= lookahead && lookahead <= '9') ||
915- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
916+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(81);
917 END_STATE();
918 case 45:
919- if (lookahead == 'l') ADVANCE(19);
920- if (('0' <= lookahead && lookahead <= '9') ||
921- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(78);
922+ if (lookahead == 'i') ADVANCE(49);
923+ if (lookahead == 'r') ADVANCE(61);
924 END_STATE();
925 case 46:
926- if (lookahead == 'l') ADVANCE(20);
927+ if (lookahead == 'i') ADVANCE(50);
928+ if (('0' <= lookahead && lookahead <= '9') ||
929+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(81);
930 END_STATE();
931 case 47:
932- if (lookahead == 'l') ADVANCE(23);
933+ if (lookahead == 'l') ADVANCE(21);
934+ if (('0' <= lookahead && lookahead <= '9') ||
935+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(80);
936 END_STATE();
937 case 48:
938- if (lookahead == 'l') ADVANCE(24);
939+ if (lookahead == 'l') ADVANCE(22);
940 END_STATE();
941 case 49:
942- if (lookahead == 'l') ADVANCE(9);
943+ if (lookahead == 'l') ADVANCE(25);
944 END_STATE();
945 case 50:
946- if (lookahead == 'm') ADVANCE(95);
947+ if (lookahead == 'l') ADVANCE(26);
948 END_STATE();
949 case 51:
950- if (lookahead == 'm') ADVANCE(38);
951+ if (lookahead == 'l') ADVANCE(11);
952 END_STATE();
953 case 52:
954- if (lookahead == 'm') ADVANCE(18);
955+ if (lookahead == 'm') ADVANCE(98);
956 END_STATE();
957 case 53:
958- if (lookahead == 'n') ADVANCE(10);
959- if (('0' <= lookahead && lookahead <= '9') ||
960- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
961+ if (lookahead == 'm') ADVANCE(40);
962 END_STATE();
963 case 54:
964- if (lookahead == 'n') ADVANCE(6);
965+ if (lookahead == 'm') ADVANCE(20);
966 END_STATE();
967 case 55:
968- if (lookahead == 'n') ADVANCE(13);
969+ if (lookahead == 'n') ADVANCE(12);
970+ if (('0' <= lookahead && lookahead <= '9') ||
971+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(81);
972 END_STATE();
973 case 56:
974 if (lookahead == 'n') ADVANCE(8);
975 @@ -693,67 +791,65 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
976 if (lookahead == 'n') ADVANCE(15);
977 END_STATE();
978 case 58:
979- if (lookahead == 'o') ADVANCE(96);
980+ if (lookahead == 'n') ADVANCE(10);
981 END_STATE();
982 case 59:
983- if (lookahead == 'o') ADVANCE(50);
984+ if (lookahead == 'n') ADVANCE(17);
985 END_STATE();
986 case 60:
987- if (lookahead == 'o') ADVANCE(14);
988+ if (lookahead == 'o') ADVANCE(99);
989 END_STATE();
990 case 61:
991- if (lookahead == 'r') ADVANCE(71);
992+ if (lookahead == 'o') ADVANCE(52);
993 END_STATE();
994 case 62:
995- if (lookahead == 'r') ADVANCE(101);
996+ if (lookahead == 'o') ADVANCE(16);
997 END_STATE();
998 case 63:
999- if (lookahead == 'r') ADVANCE(39);
1000+ if (lookahead == 'r') ADVANCE(73);
1001 END_STATE();
1002 case 64:
1003- if (lookahead == 's') ADVANCE(98);
1004+ if (lookahead == 'r') ADVANCE(104);
1005 END_STATE();
1006 case 65:
1007- if (lookahead == 't') ADVANCE(90);
1008+ if (lookahead == 'r') ADVANCE(41);
1009 END_STATE();
1010 case 66:
1011- if (lookahead == 't') ADVANCE(72);
1012+ if (lookahead == 's') ADVANCE(101);
1013 END_STATE();
1014 case 67:
1015- if (lookahead == 't') ADVANCE(28);
1016+ if (lookahead == 't') ADVANCE(93);
1017 END_STATE();
1018 case 68:
1019- if (lookahead == 'w') ADVANCE(91);
1020+ if (lookahead == 't') ADVANCE(74);
1021 END_STATE();
1022 case 69:
1023- if (lookahead == 'x') ADVANCE(103);
1024+ if (lookahead == 't') ADVANCE(30);
1025 END_STATE();
1026 case 70:
1027- if (lookahead == 'x') ADVANCE(106);
1028+ if (lookahead == 'w') ADVANCE(94);
1029 END_STATE();
1030 case 71:
1031- if (lookahead == 'y') ADVANCE(97);
1032+ if (lookahead == 'x') ADVANCE(106);
1033 END_STATE();
1034 case 72:
1035- if (lookahead == 'y') ADVANCE(105);
1036+ if (lookahead == 'x') ADVANCE(109);
1037 END_STATE();
1038 case 73:
1039- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(196);
1040+ if (lookahead == 'y') ADVANCE(100);
1041 END_STATE();
1042 case 74:
1043- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(197);
1044+ if (lookahead == 'y') ADVANCE(108);
1045 END_STATE();
1046 case 75:
1047- if (('0' <= lookahead && lookahead <= '9') ||
1048- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(242);
1049+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(200);
1050 END_STATE();
1051 case 76:
1052- if (('0' <= lookahead && lookahead <= '9') ||
1053- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(75);
1054+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(201);
1055 END_STATE();
1056 case 77:
1057 if (('0' <= lookahead && lookahead <= '9') ||
1058- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(76);
1059+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(246);
1060 END_STATE();
1061 case 78:
1062 if (('0' <= lookahead && lookahead <= '9') ||
1063 @@ -768,782 +864,788 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
1064 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
1065 END_STATE();
1066 case 81:
1067- if (eof) ADVANCE(86);
1068- if (lookahead == '\n') ADVANCE(87);
1069- if (lookahead == '\r') ADVANCE(1);
1070- if (lookahead == '%') ADVANCE(147);
1071- if (lookahead == '.') ADVANCE(3);
1072- if (lookahead == '@') ADVANCE(5);
1073- if (lookahead == 'a') ADVANCE(53);
1074- if (lookahead == 'd') ADVANCE(42);
1075- if (lookahead == 'f') ADVANCE(35);
1076- if (lookahead == 'i') ADVANCE(57);
1077- if (lookahead == 'm') ADVANCE(60);
1078- if (lookahead == 't') ADVANCE(58);
1079- if (('b' <= lookahead && lookahead <= 'e')) ADVANCE(80);
1080- if (('\t' <= lookahead && lookahead <= '\f') ||
1081- lookahead == ' ') SKIP(81)
1082- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(117);
1083+ if (('0' <= lookahead && lookahead <= '9') ||
1084+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(80);
1085 END_STATE();
1086 case 82:
1087- if (eof) ADVANCE(86);
1088- if (lookahead == '\n') ADVANCE(87);
1089- if (lookahead == '\r') ADVANCE(1);
1090- if (lookahead == '+') ADVANCE(154);
1091- if (lookahead == '-') ADVANCE(157);
1092- if (lookahead == '@') ADVANCE(161);
1093- if (lookahead == 'B') ADVANCE(177);
1094- if (lookahead == 'd') ADVANCE(168);
1095- if (lookahead == 'i') ADVANCE(184);
1096- if (lookahead == 'n') ADVANCE(169);
1097- if (lookahead == 'r') ADVANCE(173);
1098- if (lookahead == 's') ADVANCE(176);
1099- if (('\t' <= lookahead && lookahead <= '\f') ||
1100- lookahead == ' ') ADVANCE(160);
1101- if (lookahead != 0) ADVANCE(195);
1102+ if (('0' <= lookahead && lookahead <= '9') ||
1103+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(81);
1104 END_STATE();
1105 case 83:
1106- if (eof) ADVANCE(86);
1107- if (lookahead == '\n') ADVANCE(87);
1108+ if (eof) ADVANCE(89);
1109+ if (lookahead == '\n') ADVANCE(90);
1110 if (lookahead == '\r') ADVANCE(1);
1111- if (lookahead == '+') ADVANCE(73);
1112- if (lookahead == '-') ADVANCE(2);
1113- if (lookahead == '@') ADVANCE(5);
1114- if (lookahead == 'd') ADVANCE(41);
1115- if (lookahead == 'f') ADVANCE(43);
1116- if (lookahead == 'i') ADVANCE(57);
1117- if (lookahead == 't') ADVANCE(58);
1118+ if (lookahead == '%') ADVANCE(150);
1119+ if (lookahead == '.') ADVANCE(5);
1120+ if (lookahead == '@') ADVANCE(7);
1121+ if (lookahead == 'a') ADVANCE(55);
1122+ if (lookahead == 'd') ADVANCE(44);
1123+ if (lookahead == 'f') ADVANCE(37);
1124+ if (lookahead == 'i') ADVANCE(59);
1125+ if (lookahead == 'm') ADVANCE(62);
1126+ if (lookahead == 't') ADVANCE(60);
1127+ if (('b' <= lookahead && lookahead <= 'e')) ADVANCE(82);
1128 if (('\t' <= lookahead && lookahead <= '\f') ||
1129 lookahead == ' ') SKIP(83)
1130- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
1131+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120);
1132 END_STATE();
1133 case 84:
1134- if (eof) ADVANCE(86);
1135- if (lookahead == '\n') ADVANCE(87);
1136+ if (eof) ADVANCE(89);
1137+ if (lookahead == '\n') ADVANCE(90);
1138 if (lookahead == '\r') ADVANCE(1);
1139- if (lookahead == '\t' ||
1140- lookahead == ' ') SKIP(84)
1141- if (lookahead == 11 ||
1142- lookahead == '\f') ADVANCE(207);
1143- if (lookahead != 0) ADVANCE(208);
1144+ if (lookahead == '+') ADVANCE(158);
1145+ if (lookahead == '-') ADVANCE(161);
1146+ if (lookahead == '@') ADVANCE(165);
1147+ if (lookahead == 'B') ADVANCE(181);
1148+ if (lookahead == 'd') ADVANCE(172);
1149+ if (lookahead == 'i') ADVANCE(188);
1150+ if (lookahead == 'n') ADVANCE(173);
1151+ if (lookahead == 'r') ADVANCE(177);
1152+ if (lookahead == 's') ADVANCE(180);
1153+ if (('\t' <= lookahead && lookahead <= '\f') ||
1154+ lookahead == ' ') ADVANCE(164);
1155+ if (lookahead != 0) ADVANCE(199);
1156 END_STATE();
1157 case 85:
1158- if (eof) ADVANCE(86);
1159- if (lookahead == '\n') ADVANCE(87);
1160+ if (eof) ADVANCE(89);
1161+ if (lookahead == '\n') ADVANCE(90);
1162 if (lookahead == '\r') ADVANCE(1);
1163+ if (lookahead == '+') ADVANCE(2);
1164+ if (lookahead == '-') ADVANCE(4);
1165+ if (lookahead == '@') ADVANCE(7);
1166+ if (lookahead == 'd') ADVANCE(43);
1167+ if (lookahead == 'f') ADVANCE(45);
1168+ if (lookahead == 'i') ADVANCE(59);
1169+ if (lookahead == 't') ADVANCE(60);
1170 if (('\t' <= lookahead && lookahead <= '\f') ||
1171- lookahead == ' ') ADVANCE(152);
1172- if (lookahead != 0) ADVANCE(153);
1173+ lookahead == ' ') SKIP(86)
1174+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(149);
1175 END_STATE();
1176 case 86:
1177- ACCEPT_TOKEN(ts_builtin_sym_end);
1178+ if (eof) ADVANCE(89);
1179+ if (lookahead == '\n') ADVANCE(90);
1180+ if (lookahead == '\r') ADVANCE(1);
1181+ if (lookahead == '+') ADVANCE(75);
1182+ if (lookahead == '-') ADVANCE(4);
1183+ if (lookahead == '@') ADVANCE(7);
1184+ if (lookahead == 'd') ADVANCE(43);
1185+ if (lookahead == 'f') ADVANCE(45);
1186+ if (lookahead == 'i') ADVANCE(59);
1187+ if (lookahead == 't') ADVANCE(60);
1188+ if (('\t' <= lookahead && lookahead <= '\f') ||
1189+ lookahead == ' ') SKIP(86)
1190+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(149);
1191 END_STATE();
1192 case 87:
1193- ACCEPT_TOKEN(aux_sym_source_token1);
1194+ if (eof) ADVANCE(89);
1195+ if (lookahead == '\n') ADVANCE(90);
1196+ if (lookahead == '\r') ADVANCE(1);
1197+ if (lookahead == '\t' ||
1198+ lookahead == ' ') SKIP(87)
1199+ if (lookahead == 11 ||
1200+ lookahead == '\f') ADVANCE(211);
1201+ if (lookahead != 0) ADVANCE(212);
1202 END_STATE();
1203 case 88:
1204- ACCEPT_TOKEN(anon_sym_diff);
1205+ if (eof) ADVANCE(89);
1206+ if (lookahead == '\n') ADVANCE(90);
1207+ if (lookahead == '\r') ADVANCE(1);
1208+ if (('\t' <= lookahead && lookahead <= '\f') ||
1209+ lookahead == ' ') ADVANCE(156);
1210+ if (lookahead != 0) ADVANCE(157);
1211 END_STATE();
1212 case 89:
1213- ACCEPT_TOKEN(anon_sym_diff);
1214- if (lookahead == 'e') ADVANCE(62);
1215+ ACCEPT_TOKEN(ts_builtin_sym_end);
1216 END_STATE();
1217 case 90:
1218- ACCEPT_TOKEN(anon_sym_DASH_DASHgit);
1219+ ACCEPT_TOKEN(aux_sym_source_token1);
1220 END_STATE();
1221 case 91:
1222- ACCEPT_TOKEN(aux_sym_file_change_token1);
1223+ ACCEPT_TOKEN(anon_sym_diff);
1224 END_STATE();
1225 case 92:
1226- ACCEPT_TOKEN(anon_sym_file);
1227+ ACCEPT_TOKEN(anon_sym_diff);
1228+ if (lookahead == 'e') ADVANCE(64);
1229 END_STATE();
1230 case 93:
1231- ACCEPT_TOKEN(anon_sym_file);
1232- if (lookahead == 's') ADVANCE(98);
1233+ ACCEPT_TOKEN(anon_sym_DASH_DASHgit);
1234 END_STATE();
1235 case 94:
1236- ACCEPT_TOKEN(anon_sym_mode);
1237+ ACCEPT_TOKEN(aux_sym_file_change_token1);
1238 END_STATE();
1239 case 95:
1240- ACCEPT_TOKEN(anon_sym_from);
1241+ ACCEPT_TOKEN(anon_sym_file);
1242 END_STATE();
1243 case 96:
1244- ACCEPT_TOKEN(anon_sym_to);
1245+ ACCEPT_TOKEN(anon_sym_file);
1246+ if (lookahead == 's') ADVANCE(101);
1247 END_STATE();
1248 case 97:
1249- ACCEPT_TOKEN(anon_sym_Binary);
1250+ ACCEPT_TOKEN(anon_sym_mode);
1251 END_STATE();
1252 case 98:
1253- ACCEPT_TOKEN(anon_sym_files);
1254+ ACCEPT_TOKEN(anon_sym_from);
1255 END_STATE();
1256 case 99:
1257- ACCEPT_TOKEN(anon_sym_and);
1258+ ACCEPT_TOKEN(anon_sym_to);
1259 END_STATE();
1260 case 100:
1261+ ACCEPT_TOKEN(anon_sym_Binary);
1262+ END_STATE();
1263+ case 101:
1264+ ACCEPT_TOKEN(anon_sym_files);
1265+ END_STATE();
1266+ case 102:
1267+ ACCEPT_TOKEN(anon_sym_and);
1268+ END_STATE();
1269+ case 103:
1270 ACCEPT_TOKEN(anon_sym_and);
1271 if (lookahead != 0 &&
1272 lookahead != '\t' &&
1273 lookahead != '\n' &&
1274 lookahead != '\r' &&
1275- lookahead != ' ') ADVANCE(208);
1276+ lookahead != ' ') ADVANCE(212);
1277 END_STATE();
1278- case 101:
1279+ case 104:
1280 ACCEPT_TOKEN(anon_sym_differ);
1281 END_STATE();
1282- case 102:
1283+ case 105:
1284 ACCEPT_TOKEN(anon_sym_differ);
1285 if (lookahead != 0 &&
1286 lookahead != '\t' &&
1287 lookahead != '\n' &&
1288 lookahead != '\r' &&
1289- lookahead != ' ') ADVANCE(208);
1290- END_STATE();
1291- case 103:
1292- ACCEPT_TOKEN(anon_sym_index);
1293- END_STATE();
1294- case 104:
1295- ACCEPT_TOKEN(anon_sym_DOT_DOT);
1296- END_STATE();
1297- case 105:
1298- ACCEPT_TOKEN(anon_sym_similarity);
1299+ lookahead != ' ') ADVANCE(212);
1300 END_STATE();
1301 case 106:
1302- ACCEPT_TOKEN(anon_sym_index2);
1303+ ACCEPT_TOKEN(anon_sym_index);
1304 END_STATE();
1305 case 107:
1306- ACCEPT_TOKEN(aux_sym_similarity_token1);
1307- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(242);
1308- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(145);
1309+ ACCEPT_TOKEN(anon_sym_DOT_DOT);
1310 END_STATE();
1311 case 108:
1312- ACCEPT_TOKEN(aux_sym_similarity_token1);
1313- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(209);
1314- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
1315+ ACCEPT_TOKEN(anon_sym_similarity);
1316 END_STATE();
1317 case 109:
1318- ACCEPT_TOKEN(aux_sym_similarity_token1);
1319- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(75);
1320- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(107);
1321+ ACCEPT_TOKEN(anon_sym_index2);
1322 END_STATE();
1323 case 110:
1324 ACCEPT_TOKEN(aux_sym_similarity_token1);
1325- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(210);
1326- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(108);
1327+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(246);
1328+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(148);
1329 END_STATE();
1330 case 111:
1331 ACCEPT_TOKEN(aux_sym_similarity_token1);
1332- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(76);
1333- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(109);
1334+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(213);
1335+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(149);
1336 END_STATE();
1337 case 112:
1338 ACCEPT_TOKEN(aux_sym_similarity_token1);
1339- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(211);
1340+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(77);
1341 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(110);
1342 END_STATE();
1343 case 113:
1344 ACCEPT_TOKEN(aux_sym_similarity_token1);
1345- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(77);
1346+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(214);
1347 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(111);
1348 END_STATE();
1349 case 114:
1350 ACCEPT_TOKEN(aux_sym_similarity_token1);
1351- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(212);
1352+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(78);
1353 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112);
1354 END_STATE();
1355 case 115:
1356 ACCEPT_TOKEN(aux_sym_similarity_token1);
1357- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(78);
1358+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(215);
1359 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(113);
1360 END_STATE();
1361 case 116:
1362 ACCEPT_TOKEN(aux_sym_similarity_token1);
1363- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(213);
1364+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
1365 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(114);
1366 END_STATE();
1367 case 117:
1368 ACCEPT_TOKEN(aux_sym_similarity_token1);
1369- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(79);
1370+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(216);
1371 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(115);
1372 END_STATE();
1373 case 118:
1374 ACCEPT_TOKEN(aux_sym_similarity_token1);
1375- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(214);
1376+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(80);
1377 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(116);
1378 END_STATE();
1379 case 119:
1380 ACCEPT_TOKEN(aux_sym_similarity_token1);
1381- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(215);
1382- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(118);
1383+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(217);
1384+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(117);
1385 END_STATE();
1386 case 120:
1387 ACCEPT_TOKEN(aux_sym_similarity_token1);
1388- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(216);
1389- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119);
1390+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(81);
1391+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(118);
1392 END_STATE();
1393 case 121:
1394 ACCEPT_TOKEN(aux_sym_similarity_token1);
1395- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(217);
1396- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120);
1397+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(218);
1398+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119);
1399 END_STATE();
1400 case 122:
1401 ACCEPT_TOKEN(aux_sym_similarity_token1);
1402- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(218);
1403+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(219);
1404 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121);
1405 END_STATE();
1406 case 123:
1407 ACCEPT_TOKEN(aux_sym_similarity_token1);
1408- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(219);
1409+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(220);
1410 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(122);
1411 END_STATE();
1412 case 124:
1413 ACCEPT_TOKEN(aux_sym_similarity_token1);
1414- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(220);
1415+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(221);
1416 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(123);
1417 END_STATE();
1418 case 125:
1419 ACCEPT_TOKEN(aux_sym_similarity_token1);
1420- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(221);
1421+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(222);
1422 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(124);
1423 END_STATE();
1424 case 126:
1425 ACCEPT_TOKEN(aux_sym_similarity_token1);
1426- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(222);
1427+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(223);
1428 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(125);
1429 END_STATE();
1430 case 127:
1431 ACCEPT_TOKEN(aux_sym_similarity_token1);
1432- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(223);
1433+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(224);
1434 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(126);
1435 END_STATE();
1436 case 128:
1437 ACCEPT_TOKEN(aux_sym_similarity_token1);
1438- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(224);
1439+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(225);
1440 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(127);
1441 END_STATE();
1442 case 129:
1443 ACCEPT_TOKEN(aux_sym_similarity_token1);
1444- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(225);
1445+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(226);
1446 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(128);
1447 END_STATE();
1448 case 130:
1449 ACCEPT_TOKEN(aux_sym_similarity_token1);
1450- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(226);
1451+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(227);
1452 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(129);
1453 END_STATE();
1454 case 131:
1455 ACCEPT_TOKEN(aux_sym_similarity_token1);
1456- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(227);
1457+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(228);
1458 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130);
1459 END_STATE();
1460 case 132:
1461 ACCEPT_TOKEN(aux_sym_similarity_token1);
1462- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(228);
1463+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(229);
1464 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(131);
1465 END_STATE();
1466 case 133:
1467 ACCEPT_TOKEN(aux_sym_similarity_token1);
1468- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(229);
1469+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(230);
1470 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(132);
1471 END_STATE();
1472 case 134:
1473 ACCEPT_TOKEN(aux_sym_similarity_token1);
1474- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(230);
1475+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(231);
1476 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(133);
1477 END_STATE();
1478 case 135:
1479 ACCEPT_TOKEN(aux_sym_similarity_token1);
1480- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(231);
1481+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(232);
1482 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(134);
1483 END_STATE();
1484 case 136:
1485 ACCEPT_TOKEN(aux_sym_similarity_token1);
1486- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(232);
1487+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(233);
1488 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(135);
1489 END_STATE();
1490 case 137:
1491 ACCEPT_TOKEN(aux_sym_similarity_token1);
1492- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(233);
1493+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(234);
1494 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136);
1495 END_STATE();
1496 case 138:
1497 ACCEPT_TOKEN(aux_sym_similarity_token1);
1498- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(234);
1499+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(235);
1500 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137);
1501 END_STATE();
1502 case 139:
1503 ACCEPT_TOKEN(aux_sym_similarity_token1);
1504- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(235);
1505+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(236);
1506 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(138);
1507 END_STATE();
1508 case 140:
1509 ACCEPT_TOKEN(aux_sym_similarity_token1);
1510- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(236);
1511+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(237);
1512 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(139);
1513 END_STATE();
1514 case 141:
1515 ACCEPT_TOKEN(aux_sym_similarity_token1);
1516- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(237);
1517+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(238);
1518 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(140);
1519 END_STATE();
1520 case 142:
1521 ACCEPT_TOKEN(aux_sym_similarity_token1);
1522- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(238);
1523+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(239);
1524 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(141);
1525 END_STATE();
1526 case 143:
1527 ACCEPT_TOKEN(aux_sym_similarity_token1);
1528- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(239);
1529+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(240);
1530 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(142);
1531 END_STATE();
1532 case 144:
1533 ACCEPT_TOKEN(aux_sym_similarity_token1);
1534- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(240);
1535+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(241);
1536 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(143);
1537 END_STATE();
1538 case 145:
1539 ACCEPT_TOKEN(aux_sym_similarity_token1);
1540- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(241);
1541+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(242);
1542 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(144);
1543 END_STATE();
1544 case 146:
1545 ACCEPT_TOKEN(aux_sym_similarity_token1);
1546- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
1547+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(243);
1548+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(145);
1549 END_STATE();
1550 case 147:
1551- ACCEPT_TOKEN(anon_sym_PERCENT);
1552+ ACCEPT_TOKEN(aux_sym_similarity_token1);
1553+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(244);
1554+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
1555 END_STATE();
1556 case 148:
1557- ACCEPT_TOKEN(anon_sym_DASH_DASH_DASH);
1558- if (lookahead == '-') ADVANCE(159);
1559+ ACCEPT_TOKEN(aux_sym_similarity_token1);
1560+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(245);
1561+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147);
1562 END_STATE();
1563 case 149:
1564- ACCEPT_TOKEN(anon_sym_PLUS_PLUS_PLUS);
1565- if (lookahead == '+') ADVANCE(156);
1566+ ACCEPT_TOKEN(aux_sym_similarity_token1);
1567+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(149);
1568 END_STATE();
1569 case 150:
1570- ACCEPT_TOKEN(anon_sym_AT_AT);
1571+ ACCEPT_TOKEN(anon_sym_PERCENT);
1572 END_STATE();
1573 case 151:
1574- ACCEPT_TOKEN(anon_sym_AT_AT2);
1575+ ACCEPT_TOKEN(anon_sym_DASH_DASH_DASH);
1576+ if (lookahead == '-') ADVANCE(163);
1577 END_STATE();
1578 case 152:
1579- ACCEPT_TOKEN(aux_sym_location_token1);
1580- if (lookahead == '\t' ||
1581- lookahead == 11 ||
1582- lookahead == '\f' ||
1583- lookahead == ' ') ADVANCE(152);
1584- if (lookahead != 0 &&
1585- (lookahead < '\n' || '\r' < lookahead)) ADVANCE(153);
1586+ ACCEPT_TOKEN(anon_sym_PLUS_PLUS_PLUS);
1587 END_STATE();
1588 case 153:
1589- ACCEPT_TOKEN(aux_sym_location_token1);
1590- if (lookahead != 0 &&
1591- lookahead != '\n' &&
1592- lookahead != '\r') ADVANCE(153);
1593+ ACCEPT_TOKEN(anon_sym_PLUS_PLUS_PLUS);
1594+ if (lookahead == '+') ADVANCE(160);
1595 END_STATE();
1596 case 154:
1597- ACCEPT_TOKEN(anon_sym_PLUS);
1598- if (lookahead == '+') ADVANCE(155);
1599+ ACCEPT_TOKEN(anon_sym_AT_AT);
1600 END_STATE();
1601 case 155:
1602- ACCEPT_TOKEN(anon_sym_PLUS_PLUS);
1603- if (lookahead == '+') ADVANCE(149);
1604+ ACCEPT_TOKEN(anon_sym_AT_AT2);
1605 END_STATE();
1606 case 156:
1607- ACCEPT_TOKEN(anon_sym_PLUS_PLUS_PLUS_PLUS);
1608+ ACCEPT_TOKEN(aux_sym_location_token1);
1609+ if (lookahead == '\t' ||
1610+ lookahead == 11 ||
1611+ lookahead == '\f' ||
1612+ lookahead == ' ') ADVANCE(156);
1613+ if (lookahead != 0 &&
1614+ (lookahead < '\n' || '\r' < lookahead)) ADVANCE(157);
1615 END_STATE();
1616 case 157:
1617- ACCEPT_TOKEN(anon_sym_DASH);
1618- if (lookahead == '-') ADVANCE(158);
1619+ ACCEPT_TOKEN(aux_sym_location_token1);
1620+ if (lookahead != 0 &&
1621+ lookahead != '\n' &&
1622+ lookahead != '\r') ADVANCE(157);
1623 END_STATE();
1624 case 158:
1625- ACCEPT_TOKEN(anon_sym_DASH_DASH);
1626- if (lookahead == '-') ADVANCE(148);
1627+ ACCEPT_TOKEN(anon_sym_PLUS);
1628+ if (lookahead == '+') ADVANCE(159);
1629 END_STATE();
1630 case 159:
1631- ACCEPT_TOKEN(anon_sym_DASH_DASH_DASH_DASH);
1632+ ACCEPT_TOKEN(anon_sym_PLUS_PLUS);
1633+ if (lookahead == '+') ADVANCE(153);
1634 END_STATE();
1635 case 160:
1636- ACCEPT_TOKEN(sym_context);
1637- if (lookahead == '\n') ADVANCE(87);
1638- if (lookahead == '\r') ADVANCE(1);
1639- if (('\t' <= lookahead && lookahead <= '\f') ||
1640- lookahead == ' ') ADVANCE(160);
1641- if (lookahead != 0) ADVANCE(195);
1642+ ACCEPT_TOKEN(anon_sym_PLUS_PLUS_PLUS_PLUS);
1643 END_STATE();
1644 case 161:
1645- ACCEPT_TOKEN(sym_context);
1646- if (lookahead == '@') ADVANCE(150);
1647- if (lookahead != 0 &&
1648- lookahead != '\n' &&
1649- lookahead != '\r') ADVANCE(195);
1650+ ACCEPT_TOKEN(anon_sym_DASH);
1651+ if (lookahead == '-') ADVANCE(162);
1652 END_STATE();
1653 case 162:
1654- ACCEPT_TOKEN(sym_context);
1655- if (lookahead == 'a') ADVANCE(187);
1656- if (lookahead != 0 &&
1657- lookahead != '\n' &&
1658- lookahead != '\r') ADVANCE(195);
1659+ ACCEPT_TOKEN(anon_sym_DASH_DASH);
1660+ if (lookahead == '-') ADVANCE(151);
1661 END_STATE();
1662 case 163:
1663- ACCEPT_TOKEN(sym_context);
1664- if (lookahead == 'a') ADVANCE(183);
1665- if (lookahead != 0 &&
1666- lookahead != '\n' &&
1667- lookahead != '\r') ADVANCE(195);
1668+ ACCEPT_TOKEN(anon_sym_DASH_DASH_DASH_DASH);
1669 END_STATE();
1670 case 164:
1671 ACCEPT_TOKEN(sym_context);
1672- if (lookahead == 'a') ADVANCE(188);
1673- if (lookahead != 0 &&
1674- lookahead != '\n' &&
1675- lookahead != '\r') ADVANCE(195);
1676+ if (lookahead == '\n') ADVANCE(90);
1677+ if (lookahead == '\r') ADVANCE(1);
1678+ if (('\t' <= lookahead && lookahead <= '\f') ||
1679+ lookahead == ' ') ADVANCE(164);
1680+ if (lookahead != 0) ADVANCE(199);
1681 END_STATE();
1682 case 165:
1683 ACCEPT_TOKEN(sym_context);
1684- if (lookahead == 'd') ADVANCE(91);
1685+ if (lookahead == '@') ADVANCE(154);
1686 if (lookahead != 0 &&
1687 lookahead != '\n' &&
1688- lookahead != '\r') ADVANCE(195);
1689+ lookahead != '\r') ADVANCE(199);
1690 END_STATE();
1691 case 166:
1692 ACCEPT_TOKEN(sym_context);
1693- if (lookahead == 'd') ADVANCE(171);
1694+ if (lookahead == 'a') ADVANCE(191);
1695 if (lookahead != 0 &&
1696 lookahead != '\n' &&
1697- lookahead != '\r') ADVANCE(195);
1698+ lookahead != '\r') ADVANCE(199);
1699 END_STATE();
1700 case 167:
1701 ACCEPT_TOKEN(sym_context);
1702- if (lookahead == 'e') ADVANCE(91);
1703+ if (lookahead == 'a') ADVANCE(187);
1704 if (lookahead != 0 &&
1705 lookahead != '\n' &&
1706- lookahead != '\r') ADVANCE(195);
1707+ lookahead != '\r') ADVANCE(199);
1708 END_STATE();
1709 case 168:
1710 ACCEPT_TOKEN(sym_context);
1711- if (lookahead == 'e') ADVANCE(180);
1712- if (lookahead == 'i') ADVANCE(175);
1713+ if (lookahead == 'a') ADVANCE(192);
1714 if (lookahead != 0 &&
1715 lookahead != '\n' &&
1716- lookahead != '\r') ADVANCE(195);
1717+ lookahead != '\r') ADVANCE(199);
1718 END_STATE();
1719 case 169:
1720 ACCEPT_TOKEN(sym_context);
1721- if (lookahead == 'e') ADVANCE(191);
1722+ if (lookahead == 'd') ADVANCE(94);
1723 if (lookahead != 0 &&
1724 lookahead != '\n' &&
1725- lookahead != '\r') ADVANCE(195);
1726+ lookahead != '\r') ADVANCE(199);
1727 END_STATE();
1728 case 170:
1729 ACCEPT_TOKEN(sym_context);
1730- if (lookahead == 'e') ADVANCE(190);
1731+ if (lookahead == 'd') ADVANCE(175);
1732 if (lookahead != 0 &&
1733 lookahead != '\n' &&
1734- lookahead != '\r') ADVANCE(195);
1735+ lookahead != '\r') ADVANCE(199);
1736 END_STATE();
1737 case 171:
1738 ACCEPT_TOKEN(sym_context);
1739- if (lookahead == 'e') ADVANCE(192);
1740+ if (lookahead == 'e') ADVANCE(94);
1741 if (lookahead != 0 &&
1742 lookahead != '\n' &&
1743- lookahead != '\r') ADVANCE(195);
1744+ lookahead != '\r') ADVANCE(199);
1745 END_STATE();
1746 case 172:
1747 ACCEPT_TOKEN(sym_context);
1748- if (lookahead == 'e') ADVANCE(165);
1749+ if (lookahead == 'e') ADVANCE(184);
1750+ if (lookahead == 'i') ADVANCE(179);
1751 if (lookahead != 0 &&
1752 lookahead != '\n' &&
1753- lookahead != '\r') ADVANCE(195);
1754+ lookahead != '\r') ADVANCE(199);
1755 END_STATE();
1756 case 173:
1757 ACCEPT_TOKEN(sym_context);
1758- if (lookahead == 'e') ADVANCE(186);
1759+ if (lookahead == 'e') ADVANCE(195);
1760 if (lookahead != 0 &&
1761 lookahead != '\n' &&
1762- lookahead != '\r') ADVANCE(195);
1763+ lookahead != '\r') ADVANCE(199);
1764 END_STATE();
1765 case 174:
1766 ACCEPT_TOKEN(sym_context);
1767- if (lookahead == 'f') ADVANCE(88);
1768+ if (lookahead == 'e') ADVANCE(194);
1769 if (lookahead != 0 &&
1770 lookahead != '\n' &&
1771- lookahead != '\r') ADVANCE(195);
1772+ lookahead != '\r') ADVANCE(199);
1773 END_STATE();
1774 case 175:
1775 ACCEPT_TOKEN(sym_context);
1776- if (lookahead == 'f') ADVANCE(174);
1777+ if (lookahead == 'e') ADVANCE(196);
1778 if (lookahead != 0 &&
1779 lookahead != '\n' &&
1780- lookahead != '\r') ADVANCE(195);
1781+ lookahead != '\r') ADVANCE(199);
1782 END_STATE();
1783 case 176:
1784 ACCEPT_TOKEN(sym_context);
1785- if (lookahead == 'i') ADVANCE(182);
1786+ if (lookahead == 'e') ADVANCE(169);
1787 if (lookahead != 0 &&
1788 lookahead != '\n' &&
1789- lookahead != '\r') ADVANCE(195);
1790+ lookahead != '\r') ADVANCE(199);
1791 END_STATE();
1792 case 177:
1793 ACCEPT_TOKEN(sym_context);
1794- if (lookahead == 'i') ADVANCE(185);
1795+ if (lookahead == 'e') ADVANCE(190);
1796 if (lookahead != 0 &&
1797 lookahead != '\n' &&
1798- lookahead != '\r') ADVANCE(195);
1799+ lookahead != '\r') ADVANCE(199);
1800 END_STATE();
1801 case 178:
1802 ACCEPT_TOKEN(sym_context);
1803- if (lookahead == 'i') ADVANCE(181);
1804+ if (lookahead == 'f') ADVANCE(91);
1805 if (lookahead != 0 &&
1806 lookahead != '\n' &&
1807- lookahead != '\r') ADVANCE(195);
1808+ lookahead != '\r') ADVANCE(199);
1809 END_STATE();
1810 case 179:
1811 ACCEPT_TOKEN(sym_context);
1812- if (lookahead == 'i') ADVANCE(189);
1813+ if (lookahead == 'f') ADVANCE(178);
1814 if (lookahead != 0 &&
1815 lookahead != '\n' &&
1816- lookahead != '\r') ADVANCE(195);
1817+ lookahead != '\r') ADVANCE(199);
1818 END_STATE();
1819 case 180:
1820 ACCEPT_TOKEN(sym_context);
1821- if (lookahead == 'l') ADVANCE(170);
1822+ if (lookahead == 'i') ADVANCE(186);
1823 if (lookahead != 0 &&
1824 lookahead != '\n' &&
1825- lookahead != '\r') ADVANCE(195);
1826+ lookahead != '\r') ADVANCE(199);
1827 END_STATE();
1828 case 181:
1829 ACCEPT_TOKEN(sym_context);
1830- if (lookahead == 'l') ADVANCE(164);
1831+ if (lookahead == 'i') ADVANCE(189);
1832 if (lookahead != 0 &&
1833 lookahead != '\n' &&
1834- lookahead != '\r') ADVANCE(195);
1835+ lookahead != '\r') ADVANCE(199);
1836 END_STATE();
1837 case 182:
1838 ACCEPT_TOKEN(sym_context);
1839- if (lookahead == 'm') ADVANCE(178);
1840+ if (lookahead == 'i') ADVANCE(185);
1841 if (lookahead != 0 &&
1842 lookahead != '\n' &&
1843- lookahead != '\r') ADVANCE(195);
1844+ lookahead != '\r') ADVANCE(199);
1845 END_STATE();
1846 case 183:
1847 ACCEPT_TOKEN(sym_context);
1848- if (lookahead == 'm') ADVANCE(167);
1849+ if (lookahead == 'i') ADVANCE(193);
1850 if (lookahead != 0 &&
1851 lookahead != '\n' &&
1852- lookahead != '\r') ADVANCE(195);
1853+ lookahead != '\r') ADVANCE(199);
1854 END_STATE();
1855 case 184:
1856 ACCEPT_TOKEN(sym_context);
1857- if (lookahead == 'n') ADVANCE(166);
1858+ if (lookahead == 'l') ADVANCE(174);
1859 if (lookahead != 0 &&
1860 lookahead != '\n' &&
1861- lookahead != '\r') ADVANCE(195);
1862+ lookahead != '\r') ADVANCE(199);
1863 END_STATE();
1864 case 185:
1865 ACCEPT_TOKEN(sym_context);
1866- if (lookahead == 'n') ADVANCE(162);
1867+ if (lookahead == 'l') ADVANCE(168);
1868 if (lookahead != 0 &&
1869 lookahead != '\n' &&
1870- lookahead != '\r') ADVANCE(195);
1871+ lookahead != '\r') ADVANCE(199);
1872 END_STATE();
1873 case 186:
1874 ACCEPT_TOKEN(sym_context);
1875- if (lookahead == 'n') ADVANCE(163);
1876+ if (lookahead == 'm') ADVANCE(182);
1877 if (lookahead != 0 &&
1878 lookahead != '\n' &&
1879- lookahead != '\r') ADVANCE(195);
1880+ lookahead != '\r') ADVANCE(199);
1881 END_STATE();
1882 case 187:
1883 ACCEPT_TOKEN(sym_context);
1884- if (lookahead == 'r') ADVANCE(193);
1885+ if (lookahead == 'm') ADVANCE(171);
1886 if (lookahead != 0 &&
1887 lookahead != '\n' &&
1888- lookahead != '\r') ADVANCE(195);
1889+ lookahead != '\r') ADVANCE(199);
1890 END_STATE();
1891 case 188:
1892 ACCEPT_TOKEN(sym_context);
1893- if (lookahead == 'r') ADVANCE(179);
1894+ if (lookahead == 'n') ADVANCE(170);
1895 if (lookahead != 0 &&
1896 lookahead != '\n' &&
1897- lookahead != '\r') ADVANCE(195);
1898+ lookahead != '\r') ADVANCE(199);
1899 END_STATE();
1900 case 189:
1901 ACCEPT_TOKEN(sym_context);
1902- if (lookahead == 't') ADVANCE(194);
1903+ if (lookahead == 'n') ADVANCE(166);
1904 if (lookahead != 0 &&
1905 lookahead != '\n' &&
1906- lookahead != '\r') ADVANCE(195);
1907+ lookahead != '\r') ADVANCE(199);
1908 END_STATE();
1909 case 190:
1910 ACCEPT_TOKEN(sym_context);
1911- if (lookahead == 't') ADVANCE(172);
1912+ if (lookahead == 'n') ADVANCE(167);
1913 if (lookahead != 0 &&
1914 lookahead != '\n' &&
1915- lookahead != '\r') ADVANCE(195);
1916+ lookahead != '\r') ADVANCE(199);
1917 END_STATE();
1918 case 191:
1919 ACCEPT_TOKEN(sym_context);
1920- if (lookahead == 'w') ADVANCE(91);
1921+ if (lookahead == 'r') ADVANCE(197);
1922 if (lookahead != 0 &&
1923 lookahead != '\n' &&
1924- lookahead != '\r') ADVANCE(195);
1925+ lookahead != '\r') ADVANCE(199);
1926 END_STATE();
1927 case 192:
1928 ACCEPT_TOKEN(sym_context);
1929- if (lookahead == 'x') ADVANCE(103);
1930+ if (lookahead == 'r') ADVANCE(183);
1931 if (lookahead != 0 &&
1932 lookahead != '\n' &&
1933- lookahead != '\r') ADVANCE(195);
1934+ lookahead != '\r') ADVANCE(199);
1935 END_STATE();
1936 case 193:
1937 ACCEPT_TOKEN(sym_context);
1938- if (lookahead == 'y') ADVANCE(97);
1939+ if (lookahead == 't') ADVANCE(198);
1940 if (lookahead != 0 &&
1941 lookahead != '\n' &&
1942- lookahead != '\r') ADVANCE(195);
1943+ lookahead != '\r') ADVANCE(199);
1944 END_STATE();
1945 case 194:
1946 ACCEPT_TOKEN(sym_context);
1947- if (lookahead == 'y') ADVANCE(105);
1948+ if (lookahead == 't') ADVANCE(176);
1949 if (lookahead != 0 &&
1950 lookahead != '\n' &&
1951- lookahead != '\r') ADVANCE(195);
1952+ lookahead != '\r') ADVANCE(199);
1953 END_STATE();
1954 case 195:
1955 ACCEPT_TOKEN(sym_context);
1956+ if (lookahead == 'w') ADVANCE(94);
1957 if (lookahead != 0 &&
1958 lookahead != '\n' &&
1959- lookahead != '\r') ADVANCE(195);
1960+ lookahead != '\r') ADVANCE(199);
1961 END_STATE();
1962 case 196:
1963- ACCEPT_TOKEN(sym_linerange);
1964- if (lookahead == ',') ADVANCE(74);
1965- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(196);
1966+ ACCEPT_TOKEN(sym_context);
1967+ if (lookahead == 'x') ADVANCE(106);
1968+ if (lookahead != 0 &&
1969+ lookahead != '\n' &&
1970+ lookahead != '\r') ADVANCE(199);
1971 END_STATE();
1972 case 197:
1973- ACCEPT_TOKEN(sym_linerange);
1974- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(197);
1975+ ACCEPT_TOKEN(sym_context);
1976+ if (lookahead == 'y') ADVANCE(100);
1977+ if (lookahead != 0 &&
1978+ lookahead != '\n' &&
1979+ lookahead != '\r') ADVANCE(199);
1980 END_STATE();
1981 case 198:
1982+ ACCEPT_TOKEN(sym_context);
1983+ if (lookahead == 'y') ADVANCE(108);
1984+ if (lookahead != 0 &&
1985+ lookahead != '\n' &&
1986+ lookahead != '\r') ADVANCE(199);
1987+ END_STATE();
1988+ case 199:
1989+ ACCEPT_TOKEN(sym_context);
1990+ if (lookahead != 0 &&
1991+ lookahead != '\n' &&
1992+ lookahead != '\r') ADVANCE(199);
1993+ END_STATE();
1994+ case 200:
1995+ ACCEPT_TOKEN(sym_linerange);
1996+ if (lookahead == ',') ADVANCE(76);
1997+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(200);
1998+ END_STATE();
1999+ case 201:
2000+ ACCEPT_TOKEN(sym_linerange);
2001+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(201);
2002+ END_STATE();
2003+ case 202:
2004 ACCEPT_TOKEN(aux_sym_filename_token1);
2005- if (lookahead == 'a') ADVANCE(205);
2006+ if (lookahead == 'a') ADVANCE(209);
2007 if (lookahead == 11 ||
2008- lookahead == '\f') ADVANCE(198);
2009+ lookahead == '\f') ADVANCE(202);
2010 if (lookahead != 0 &&
2011 (lookahead < '\t' || '\r' < lookahead) &&
2012- lookahead != ' ') ADVANCE(208);
2013+ lookahead != ' ') ADVANCE(212);
2014 END_STATE();
2015- case 199:
2016+ case 203:
2017 ACCEPT_TOKEN(aux_sym_filename_token1);
2018- if (lookahead == 'd') ADVANCE(204);
2019+ if (lookahead == 'd') ADVANCE(208);
2020 if (lookahead == 11 ||
2021- lookahead == '\f') ADVANCE(199);
2022+ lookahead == '\f') ADVANCE(203);
2023 if (lookahead != 0 &&
2024 (lookahead < '\t' || '\r' < lookahead) &&
2025- lookahead != ' ') ADVANCE(208);
2026+ lookahead != ' ') ADVANCE(212);
2027 END_STATE();
2028- case 200:
2029+ case 204:
2030 ACCEPT_TOKEN(aux_sym_filename_token1);
2031- if (lookahead == 'd') ADVANCE(100);
2032+ if (lookahead == 'd') ADVANCE(103);
2033 if (lookahead != 0 &&
2034 lookahead != '\t' &&
2035 lookahead != '\n' &&
2036 lookahead != '\r' &&
2037- lookahead != ' ') ADVANCE(208);
2038+ lookahead != ' ') ADVANCE(212);
2039 END_STATE();
2040- case 201:
2041+ case 205:
2042 ACCEPT_TOKEN(aux_sym_filename_token1);
2043- if (lookahead == 'e') ADVANCE(206);
2044+ if (lookahead == 'e') ADVANCE(210);
2045 if (lookahead != 0 &&
2046 lookahead != '\t' &&
2047 lookahead != '\n' &&
2048 lookahead != '\r' &&
2049- lookahead != ' ') ADVANCE(208);
2050+ lookahead != ' ') ADVANCE(212);
2051 END_STATE();
2052- case 202:
2053+ case 206:
2054 ACCEPT_TOKEN(aux_sym_filename_token1);
2055- if (lookahead == 'f') ADVANCE(201);
2056+ if (lookahead == 'f') ADVANCE(205);
2057 if (lookahead != 0 &&
2058 lookahead != '\t' &&
2059 lookahead != '\n' &&
2060 lookahead != '\r' &&
2061- lookahead != ' ') ADVANCE(208);
2062+ lookahead != ' ') ADVANCE(212);
2063 END_STATE();
2064- case 203:
2065+ case 207:
2066 ACCEPT_TOKEN(aux_sym_filename_token1);
2067- if (lookahead == 'f') ADVANCE(202);
2068+ if (lookahead == 'f') ADVANCE(206);
2069 if (lookahead != 0 &&
2070 lookahead != '\t' &&
2071 lookahead != '\n' &&
2072 lookahead != '\r' &&
2073- lookahead != ' ') ADVANCE(208);
2074+ lookahead != ' ') ADVANCE(212);
2075 END_STATE();
2076- case 204:
2077+ case 208:
2078 ACCEPT_TOKEN(aux_sym_filename_token1);
2079- if (lookahead == 'i') ADVANCE(203);
2080+ if (lookahead == 'i') ADVANCE(207);
2081 if (lookahead != 0 &&
2082 lookahead != '\t' &&
2083 lookahead != '\n' &&
2084 lookahead != '\r' &&
2085- lookahead != ' ') ADVANCE(208);
2086+ lookahead != ' ') ADVANCE(212);
2087 END_STATE();
2088- case 205:
2089+ case 209:
2090 ACCEPT_TOKEN(aux_sym_filename_token1);
2091- if (lookahead == 'n') ADVANCE(200);
2092+ if (lookahead == 'n') ADVANCE(204);
2093 if (lookahead != 0 &&
2094 lookahead != '\t' &&
2095 lookahead != '\n' &&
2096 lookahead != '\r' &&
2097- lookahead != ' ') ADVANCE(208);
2098+ lookahead != ' ') ADVANCE(212);
2099 END_STATE();
2100- case 206:
2101+ case 210:
2102 ACCEPT_TOKEN(aux_sym_filename_token1);
2103- if (lookahead == 'r') ADVANCE(102);
2104+ if (lookahead == 'r') ADVANCE(105);
2105 if (lookahead != 0 &&
2106 lookahead != '\t' &&
2107 lookahead != '\n' &&
2108 lookahead != '\r' &&
2109- lookahead != ' ') ADVANCE(208);
2110+ lookahead != ' ') ADVANCE(212);
2111 END_STATE();
2112- case 207:
2113+ case 211:
2114 ACCEPT_TOKEN(aux_sym_filename_token1);
2115 if (lookahead == 11 ||
2116- lookahead == '\f') ADVANCE(207);
2117+ lookahead == '\f') ADVANCE(211);
2118 if (lookahead != 0 &&
2119 (lookahead < '\t' || '\r' < lookahead) &&
2120- lookahead != ' ') ADVANCE(208);
2121+ lookahead != ' ') ADVANCE(212);
2122 END_STATE();
2123- case 208:
2124+ case 212:
2125 ACCEPT_TOKEN(aux_sym_filename_token1);
2126 if (lookahead != 0 &&
2127 lookahead != '\t' &&
2128 lookahead != '\n' &&
2129 lookahead != '\r' &&
2130- lookahead != ' ') ADVANCE(208);
2131- END_STATE();
2132- case 209:
2133- ACCEPT_TOKEN(sym_commit);
2134- END_STATE();
2135- case 210:
2136- ACCEPT_TOKEN(sym_commit);
2137- if (('0' <= lookahead && lookahead <= '9') ||
2138- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(209);
2139- END_STATE();
2140- case 211:
2141- ACCEPT_TOKEN(sym_commit);
2142- if (('0' <= lookahead && lookahead <= '9') ||
2143- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(210);
2144- END_STATE();
2145- case 212:
2146- ACCEPT_TOKEN(sym_commit);
2147- if (('0' <= lookahead && lookahead <= '9') ||
2148- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(211);
2149+ lookahead != ' ') ADVANCE(212);
2150 END_STATE();
2151 case 213:
2152 ACCEPT_TOKEN(sym_commit);
2153- if (('0' <= lookahead && lookahead <= '9') ||
2154- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(212);
2155 END_STATE();
2156 case 214:
2157 ACCEPT_TOKEN(sym_commit);
2158 @@ -1690,6 +1792,26 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
2159 if (('0' <= lookahead && lookahead <= '9') ||
2160 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(241);
2161 END_STATE();
2162+ case 243:
2163+ ACCEPT_TOKEN(sym_commit);
2164+ if (('0' <= lookahead && lookahead <= '9') ||
2165+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(242);
2166+ END_STATE();
2167+ case 244:
2168+ ACCEPT_TOKEN(sym_commit);
2169+ if (('0' <= lookahead && lookahead <= '9') ||
2170+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(243);
2171+ END_STATE();
2172+ case 245:
2173+ ACCEPT_TOKEN(sym_commit);
2174+ if (('0' <= lookahead && lookahead <= '9') ||
2175+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(244);
2176+ END_STATE();
2177+ case 246:
2178+ ACCEPT_TOKEN(sym_commit);
2179+ if (('0' <= lookahead && lookahead <= '9') ||
2180+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(245);
2181+ END_STATE();
2182 default:
2183 return false;
2184 }
2185 @@ -1697,58 +1819,88 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
2186
2187 static const TSLexMode ts_lex_modes[STATE_COUNT] = {
2188 [0] = {.lex_state = 0},
2189- [1] = {.lex_state = 82},
2190- [2] = {.lex_state = 82},
2191- [3] = {.lex_state = 82},
2192- [4] = {.lex_state = 82},
2193+ [1] = {.lex_state = 84},
2194+ [2] = {.lex_state = 84},
2195+ [3] = {.lex_state = 84},
2196+ [4] = {.lex_state = 84},
2197 [5] = {.lex_state = 84},
2198 [6] = {.lex_state = 84},
2199 [7] = {.lex_state = 84},
2200 [8] = {.lex_state = 84},
2201- [9] = {.lex_state = 83},
2202- [10] = {.lex_state = 85},
2203- [11] = {.lex_state = 85},
2204- [12] = {.lex_state = 12},
2205+ [9] = {.lex_state = 84},
2206+ [10] = {.lex_state = 84},
2207+ [11] = {.lex_state = 84},
2208+ [12] = {.lex_state = 84},
2209 [13] = {.lex_state = 84},
2210- [14] = {.lex_state = 85},
2211+ [14] = {.lex_state = 84},
2212 [15] = {.lex_state = 84},
2213- [16] = {.lex_state = 7},
2214+ [16] = {.lex_state = 84},
2215 [17] = {.lex_state = 84},
2216 [18] = {.lex_state = 84},
2217- [19] = {.lex_state = 7},
2218- [20] = {.lex_state = 12},
2219- [21] = {.lex_state = 83},
2220- [22] = {.lex_state = 0},
2221- [23] = {.lex_state = 0},
2222- [24] = {.lex_state = 0},
2223- [25] = {.lex_state = 0},
2224- [26] = {.lex_state = 0},
2225- [27] = {.lex_state = 0},
2226- [28] = {.lex_state = 0},
2227- [29] = {.lex_state = 0},
2228- [30] = {.lex_state = 0},
2229- [31] = {.lex_state = 83},
2230- [32] = {.lex_state = 0},
2231- [33] = {.lex_state = 0},
2232- [34] = {.lex_state = 0},
2233- [35] = {.lex_state = 0},
2234- [36] = {.lex_state = 0},
2235- [37] = {.lex_state = 83},
2236- [38] = {.lex_state = 0},
2237- [39] = {.lex_state = 83},
2238+ [19] = {.lex_state = 87},
2239+ [20] = {.lex_state = 84},
2240+ [21] = {.lex_state = 87},
2241+ [22] = {.lex_state = 84},
2242+ [23] = {.lex_state = 85},
2243+ [24] = {.lex_state = 87},
2244+ [25] = {.lex_state = 87},
2245+ [26] = {.lex_state = 87},
2246+ [27] = {.lex_state = 88},
2247+ [28] = {.lex_state = 87},
2248+ [29] = {.lex_state = 85},
2249+ [30] = {.lex_state = 87},
2250+ [31] = {.lex_state = 14},
2251+ [32] = {.lex_state = 88},
2252+ [33] = {.lex_state = 14},
2253+ [34] = {.lex_state = 87},
2254+ [35] = {.lex_state = 88},
2255+ [36] = {.lex_state = 9},
2256+ [37] = {.lex_state = 87},
2257+ [38] = {.lex_state = 87},
2258+ [39] = {.lex_state = 9},
2259 [40] = {.lex_state = 0},
2260 [41] = {.lex_state = 0},
2261- [42] = {.lex_state = 0},
2262- [43] = {.lex_state = 31},
2263+ [42] = {.lex_state = 85},
2264+ [43] = {.lex_state = 0},
2265 [44] = {.lex_state = 0},
2266- [45] = {.lex_state = 83},
2267+ [45] = {.lex_state = 0},
2268 [46] = {.lex_state = 0},
2269- [47] = {.lex_state = 83},
2270- [48] = {.lex_state = 83},
2271- [49] = {.lex_state = 83},
2272- [50] = {.lex_state = 83},
2273- [51] = {.lex_state = 31},
2274- [52] = {.lex_state = 31},
2275+ [47] = {.lex_state = 0},
2276+ [48] = {.lex_state = 0},
2277+ [49] = {.lex_state = 0},
2278+ [50] = {.lex_state = 85},
2279+ [51] = {.lex_state = 0},
2280+ [52] = {.lex_state = 0},
2281+ [53] = {.lex_state = 0},
2282+ [54] = {.lex_state = 0},
2283+ [55] = {.lex_state = 85},
2284+ [56] = {.lex_state = 0},
2285+ [57] = {.lex_state = 0},
2286+ [58] = {.lex_state = 0},
2287+ [59] = {.lex_state = 0},
2288+ [60] = {.lex_state = 85},
2289+ [61] = {.lex_state = 0},
2290+ [62] = {.lex_state = 0},
2291+ [63] = {.lex_state = 0},
2292+ [64] = {.lex_state = 85},
2293+ [65] = {.lex_state = 0},
2294+ [66] = {.lex_state = 0},
2295+ [67] = {.lex_state = 85},
2296+ [68] = {.lex_state = 0},
2297+ [69] = {.lex_state = 33},
2298+ [70] = {.lex_state = 0},
2299+ [71] = {.lex_state = 0},
2300+ [72] = {.lex_state = 0},
2301+ [73] = {.lex_state = 0},
2302+ [74] = {.lex_state = 85},
2303+ [75] = {.lex_state = 85},
2304+ [76] = {.lex_state = 0},
2305+ [77] = {.lex_state = 0},
2306+ [78] = {.lex_state = 0},
2307+ [79] = {.lex_state = 85},
2308+ [80] = {.lex_state = 85},
2309+ [81] = {.lex_state = 33},
2310+ [82] = {.lex_state = 33},
2311 };
2312
2313 static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
2314 @@ -1784,18 +1936,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
2315 [sym_commit] = ACTIONS(1),
2316 },
2317 [1] = {
2318- [sym_source] = STATE(44),
2319- [sym__line] = STATE(34),
2320- [sym_command] = STATE(34),
2321- [sym_file_change] = STATE(34),
2322- [sym_binary_change] = STATE(34),
2323- [sym_index] = STATE(34),
2324- [sym_similarity] = STATE(34),
2325- [sym_old_file] = STATE(34),
2326- [sym_new_file] = STATE(34),
2327- [sym_location] = STATE(34),
2328- [sym_addition] = STATE(34),
2329- [sym_deletion] = STATE(34),
2330+ [sym_source] = STATE(78),
2331+ [sym__line] = STATE(49),
2332+ [sym_block] = STATE(3),
2333+ [sym_command] = STATE(77),
2334+ [sym_file_change] = STATE(49),
2335+ [sym_binary_change] = STATE(49),
2336+ [sym_index] = STATE(49),
2337+ [sym_similarity] = STATE(49),
2338+ [sym_old_file] = STATE(49),
2339+ [sym_new_file] = STATE(49),
2340+ [sym_location] = STATE(49),
2341+ [sym_addition] = STATE(49),
2342+ [sym_deletion] = STATE(49),
2343 [aux_sym_source_repeat1] = STATE(3),
2344 [ts_builtin_sym_end] = ACTIONS(3),
2345 [aux_sym_source_token1] = ACTIONS(5),
2346 @@ -1816,17 +1969,18 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
2347 [sym_context] = ACTIONS(31),
2348 },
2349 [2] = {
2350- [sym__line] = STATE(38),
2351- [sym_command] = STATE(38),
2352- [sym_file_change] = STATE(38),
2353- [sym_binary_change] = STATE(38),
2354- [sym_index] = STATE(38),
2355- [sym_similarity] = STATE(38),
2356- [sym_old_file] = STATE(38),
2357- [sym_new_file] = STATE(38),
2358- [sym_location] = STATE(38),
2359- [sym_addition] = STATE(38),
2360- [sym_deletion] = STATE(38),
2361+ [sym__line] = STATE(61),
2362+ [sym_block] = STATE(2),
2363+ [sym_command] = STATE(77),
2364+ [sym_file_change] = STATE(61),
2365+ [sym_binary_change] = STATE(61),
2366+ [sym_index] = STATE(61),
2367+ [sym_similarity] = STATE(61),
2368+ [sym_old_file] = STATE(61),
2369+ [sym_new_file] = STATE(61),
2370+ [sym_location] = STATE(61),
2371+ [sym_addition] = STATE(61),
2372+ [sym_deletion] = STATE(61),
2373 [aux_sym_source_repeat1] = STATE(2),
2374 [ts_builtin_sym_end] = ACTIONS(33),
2375 [aux_sym_source_token1] = ACTIONS(35),
2376 @@ -1847,17 +2001,18 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
2377 [sym_context] = ACTIONS(74),
2378 },
2379 [3] = {
2380- [sym__line] = STATE(28),
2381- [sym_command] = STATE(28),
2382- [sym_file_change] = STATE(28),
2383- [sym_binary_change] = STATE(28),
2384- [sym_index] = STATE(28),
2385- [sym_similarity] = STATE(28),
2386- [sym_old_file] = STATE(28),
2387- [sym_new_file] = STATE(28),
2388- [sym_location] = STATE(28),
2389- [sym_addition] = STATE(28),
2390- [sym_deletion] = STATE(28),
2391+ [sym__line] = STATE(45),
2392+ [sym_block] = STATE(2),
2393+ [sym_command] = STATE(77),
2394+ [sym_file_change] = STATE(45),
2395+ [sym_binary_change] = STATE(45),
2396+ [sym_index] = STATE(45),
2397+ [sym_similarity] = STATE(45),
2398+ [sym_old_file] = STATE(45),
2399+ [sym_new_file] = STATE(45),
2400+ [sym_location] = STATE(45),
2401+ [sym_addition] = STATE(45),
2402+ [sym_deletion] = STATE(45),
2403 [aux_sym_source_repeat1] = STATE(2),
2404 [ts_builtin_sym_end] = ACTIONS(77),
2405 [aux_sym_source_token1] = ACTIONS(79),
2406 @@ -1880,8 +2035,303 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
2407 };
2408
2409 static const uint16_t ts_small_parse_table[] = {
2410- [0] = 2,
2411- ACTIONS(83), 8,
2412+ [0] = 10,
2413+ ACTIONS(9), 1,
2414+ aux_sym_file_change_token1,
2415+ ACTIONS(11), 1,
2416+ anon_sym_Binary,
2417+ ACTIONS(13), 1,
2418+ anon_sym_index,
2419+ ACTIONS(15), 1,
2420+ anon_sym_similarity,
2421+ ACTIONS(87), 1,
2422+ anon_sym_DASH_DASH_DASH,
2423+ STATE(6), 1,
2424+ aux_sym_block_repeat1,
2425+ STATE(62), 1,
2426+ sym_old_file,
2427+ STATE(66), 4,
2428+ sym_file_change,
2429+ sym_binary_change,
2430+ sym_index,
2431+ sym_similarity,
2432+ ACTIONS(83), 5,
2433+ ts_builtin_sym_end,
2434+ anon_sym_diff,
2435+ anon_sym_AT_AT,
2436+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2437+ anon_sym_DASH_DASH_DASH_DASH,
2438+ ACTIONS(85), 7,
2439+ aux_sym_source_token1,
2440+ anon_sym_PLUS_PLUS_PLUS,
2441+ anon_sym_PLUS,
2442+ anon_sym_PLUS_PLUS,
2443+ anon_sym_DASH,
2444+ anon_sym_DASH_DASH,
2445+ sym_context,
2446+ [44] = 10,
2447+ ACTIONS(9), 1,
2448+ aux_sym_file_change_token1,
2449+ ACTIONS(11), 1,
2450+ anon_sym_Binary,
2451+ ACTIONS(13), 1,
2452+ anon_sym_index,
2453+ ACTIONS(15), 1,
2454+ anon_sym_similarity,
2455+ ACTIONS(87), 1,
2456+ anon_sym_DASH_DASH_DASH,
2457+ STATE(4), 1,
2458+ aux_sym_block_repeat1,
2459+ STATE(58), 1,
2460+ sym_old_file,
2461+ STATE(66), 4,
2462+ sym_file_change,
2463+ sym_binary_change,
2464+ sym_index,
2465+ sym_similarity,
2466+ ACTIONS(89), 5,
2467+ ts_builtin_sym_end,
2468+ anon_sym_diff,
2469+ anon_sym_AT_AT,
2470+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2471+ anon_sym_DASH_DASH_DASH_DASH,
2472+ ACTIONS(91), 7,
2473+ aux_sym_source_token1,
2474+ anon_sym_PLUS_PLUS_PLUS,
2475+ anon_sym_PLUS,
2476+ anon_sym_PLUS_PLUS,
2477+ anon_sym_DASH,
2478+ anon_sym_DASH_DASH,
2479+ sym_context,
2480+ [88] = 8,
2481+ ACTIONS(97), 1,
2482+ aux_sym_file_change_token1,
2483+ ACTIONS(100), 1,
2484+ anon_sym_Binary,
2485+ ACTIONS(103), 1,
2486+ anon_sym_index,
2487+ ACTIONS(106), 1,
2488+ anon_sym_similarity,
2489+ STATE(6), 1,
2490+ aux_sym_block_repeat1,
2491+ STATE(66), 4,
2492+ sym_file_change,
2493+ sym_binary_change,
2494+ sym_index,
2495+ sym_similarity,
2496+ ACTIONS(93), 5,
2497+ ts_builtin_sym_end,
2498+ anon_sym_diff,
2499+ anon_sym_AT_AT,
2500+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2501+ anon_sym_DASH_DASH_DASH_DASH,
2502+ ACTIONS(95), 8,
2503+ aux_sym_source_token1,
2504+ anon_sym_DASH_DASH_DASH,
2505+ anon_sym_PLUS_PLUS_PLUS,
2506+ anon_sym_PLUS,
2507+ anon_sym_PLUS_PLUS,
2508+ anon_sym_DASH,
2509+ anon_sym_DASH_DASH,
2510+ sym_context,
2511+ [127] = 12,
2512+ ACTIONS(25), 1,
2513+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2514+ ACTIONS(29), 1,
2515+ anon_sym_DASH_DASH_DASH_DASH,
2516+ ACTIONS(111), 1,
2517+ aux_sym_source_token1,
2518+ ACTIONS(113), 1,
2519+ anon_sym_DASH_DASH_DASH,
2520+ ACTIONS(115), 1,
2521+ anon_sym_PLUS_PLUS_PLUS,
2522+ ACTIONS(117), 1,
2523+ sym_context,
2524+ STATE(11), 1,
2525+ aux_sym_changes_repeat2,
2526+ STATE(17), 1,
2527+ sym_changes,
2528+ ACTIONS(23), 2,
2529+ anon_sym_PLUS,
2530+ anon_sym_PLUS_PLUS,
2531+ ACTIONS(27), 2,
2532+ anon_sym_DASH,
2533+ anon_sym_DASH_DASH,
2534+ STATE(54), 2,
2535+ sym_addition,
2536+ sym_deletion,
2537+ ACTIONS(109), 7,
2538+ ts_builtin_sym_end,
2539+ anon_sym_diff,
2540+ aux_sym_file_change_token1,
2541+ anon_sym_Binary,
2542+ anon_sym_index,
2543+ anon_sym_similarity,
2544+ anon_sym_AT_AT,
2545+ [173] = 5,
2546+ ACTIONS(21), 1,
2547+ anon_sym_AT_AT,
2548+ STATE(65), 1,
2549+ sym_location,
2550+ STATE(9), 2,
2551+ sym_hunk,
2552+ aux_sym_hunks_repeat1,
2553+ ACTIONS(119), 8,
2554+ ts_builtin_sym_end,
2555+ anon_sym_diff,
2556+ aux_sym_file_change_token1,
2557+ anon_sym_Binary,
2558+ anon_sym_index,
2559+ anon_sym_similarity,
2560+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2561+ anon_sym_DASH_DASH_DASH_DASH,
2562+ ACTIONS(121), 8,
2563+ aux_sym_source_token1,
2564+ anon_sym_DASH_DASH_DASH,
2565+ anon_sym_PLUS_PLUS_PLUS,
2566+ anon_sym_PLUS,
2567+ anon_sym_PLUS_PLUS,
2568+ anon_sym_DASH,
2569+ anon_sym_DASH_DASH,
2570+ sym_context,
2571+ [204] = 5,
2572+ ACTIONS(127), 1,
2573+ anon_sym_AT_AT,
2574+ STATE(65), 1,
2575+ sym_location,
2576+ STATE(9), 2,
2577+ sym_hunk,
2578+ aux_sym_hunks_repeat1,
2579+ ACTIONS(123), 8,
2580+ ts_builtin_sym_end,
2581+ anon_sym_diff,
2582+ aux_sym_file_change_token1,
2583+ anon_sym_Binary,
2584+ anon_sym_index,
2585+ anon_sym_similarity,
2586+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2587+ anon_sym_DASH_DASH_DASH_DASH,
2588+ ACTIONS(125), 8,
2589+ aux_sym_source_token1,
2590+ anon_sym_DASH_DASH_DASH,
2591+ anon_sym_PLUS_PLUS_PLUS,
2592+ anon_sym_PLUS,
2593+ anon_sym_PLUS_PLUS,
2594+ anon_sym_DASH,
2595+ anon_sym_DASH_DASH,
2596+ sym_context,
2597+ [235] = 11,
2598+ ACTIONS(132), 1,
2599+ aux_sym_source_token1,
2600+ ACTIONS(134), 1,
2601+ anon_sym_DASH_DASH_DASH,
2602+ ACTIONS(137), 1,
2603+ anon_sym_PLUS_PLUS_PLUS,
2604+ ACTIONS(143), 1,
2605+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2606+ ACTIONS(149), 1,
2607+ anon_sym_DASH_DASH_DASH_DASH,
2608+ ACTIONS(152), 1,
2609+ sym_context,
2610+ STATE(10), 1,
2611+ aux_sym_changes_repeat2,
2612+ ACTIONS(140), 2,
2613+ anon_sym_PLUS,
2614+ anon_sym_PLUS_PLUS,
2615+ ACTIONS(146), 2,
2616+ anon_sym_DASH,
2617+ anon_sym_DASH_DASH,
2618+ STATE(54), 2,
2619+ sym_addition,
2620+ sym_deletion,
2621+ ACTIONS(130), 7,
2622+ ts_builtin_sym_end,
2623+ anon_sym_diff,
2624+ aux_sym_file_change_token1,
2625+ anon_sym_Binary,
2626+ anon_sym_index,
2627+ anon_sym_similarity,
2628+ anon_sym_AT_AT,
2629+ [278] = 11,
2630+ ACTIONS(25), 1,
2631+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2632+ ACTIONS(29), 1,
2633+ anon_sym_DASH_DASH_DASH_DASH,
2634+ ACTIONS(113), 1,
2635+ anon_sym_DASH_DASH_DASH,
2636+ ACTIONS(115), 1,
2637+ anon_sym_PLUS_PLUS_PLUS,
2638+ ACTIONS(117), 1,
2639+ sym_context,
2640+ ACTIONS(157), 1,
2641+ aux_sym_source_token1,
2642+ STATE(10), 1,
2643+ aux_sym_changes_repeat2,
2644+ ACTIONS(23), 2,
2645+ anon_sym_PLUS,
2646+ anon_sym_PLUS_PLUS,
2647+ ACTIONS(27), 2,
2648+ anon_sym_DASH,
2649+ anon_sym_DASH_DASH,
2650+ STATE(54), 2,
2651+ sym_addition,
2652+ sym_deletion,
2653+ ACTIONS(155), 7,
2654+ ts_builtin_sym_end,
2655+ anon_sym_diff,
2656+ aux_sym_file_change_token1,
2657+ anon_sym_Binary,
2658+ anon_sym_index,
2659+ anon_sym_similarity,
2660+ anon_sym_AT_AT,
2661+ [321] = 4,
2662+ ACTIONS(159), 1,
2663+ aux_sym_source_token1,
2664+ STATE(13), 1,
2665+ aux_sym_changes_repeat1,
2666+ ACTIONS(132), 7,
2667+ anon_sym_DASH_DASH_DASH,
2668+ anon_sym_PLUS_PLUS_PLUS,
2669+ anon_sym_PLUS,
2670+ anon_sym_PLUS_PLUS,
2671+ anon_sym_DASH,
2672+ anon_sym_DASH_DASH,
2673+ sym_context,
2674+ ACTIONS(130), 9,
2675+ ts_builtin_sym_end,
2676+ anon_sym_diff,
2677+ aux_sym_file_change_token1,
2678+ anon_sym_Binary,
2679+ anon_sym_index,
2680+ anon_sym_similarity,
2681+ anon_sym_AT_AT,
2682+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2683+ anon_sym_DASH_DASH_DASH_DASH,
2684+ [348] = 4,
2685+ ACTIONS(163), 1,
2686+ aux_sym_source_token1,
2687+ STATE(13), 1,
2688+ aux_sym_changes_repeat1,
2689+ ACTIONS(166), 7,
2690+ anon_sym_DASH_DASH_DASH,
2691+ anon_sym_PLUS_PLUS_PLUS,
2692+ anon_sym_PLUS,
2693+ anon_sym_PLUS_PLUS,
2694+ anon_sym_DASH,
2695+ anon_sym_DASH_DASH,
2696+ sym_context,
2697+ ACTIONS(161), 9,
2698+ ts_builtin_sym_end,
2699+ anon_sym_diff,
2700+ aux_sym_file_change_token1,
2701+ anon_sym_Binary,
2702+ anon_sym_index,
2703+ anon_sym_similarity,
2704+ anon_sym_AT_AT,
2705+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2706+ anon_sym_DASH_DASH_DASH_DASH,
2707+ [375] = 2,
2708+ ACTIONS(168), 8,
2709 aux_sym_source_token1,
2710 anon_sym_DASH_DASH_DASH,
2711 anon_sym_PLUS_PLUS_PLUS,
2712 @@ -1900,300 +2350,485 @@ static const uint16_t ts_small_parse_table[] = {
2713 anon_sym_AT_AT,
2714 anon_sym_PLUS_PLUS_PLUS_PLUS,
2715 anon_sym_DASH_DASH_DASH_DASH,
2716- [22] = 5,
2717- ACTIONS(85), 1,
2718+ [397] = 2,
2719+ ACTIONS(95), 8,
2720+ aux_sym_source_token1,
2721+ anon_sym_DASH_DASH_DASH,
2722+ anon_sym_PLUS_PLUS_PLUS,
2723+ anon_sym_PLUS,
2724+ anon_sym_PLUS_PLUS,
2725+ anon_sym_DASH,
2726+ anon_sym_DASH_DASH,
2727+ sym_context,
2728+ ACTIONS(93), 9,
2729 ts_builtin_sym_end,
2730- ACTIONS(87), 1,
2731+ anon_sym_diff,
2732+ aux_sym_file_change_token1,
2733+ anon_sym_Binary,
2734+ anon_sym_index,
2735+ anon_sym_similarity,
2736+ anon_sym_AT_AT,
2737+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2738+ anon_sym_DASH_DASH_DASH_DASH,
2739+ [419] = 2,
2740+ ACTIONS(172), 8,
2741+ aux_sym_source_token1,
2742+ anon_sym_DASH_DASH_DASH,
2743+ anon_sym_PLUS_PLUS_PLUS,
2744+ anon_sym_PLUS,
2745+ anon_sym_PLUS_PLUS,
2746+ anon_sym_DASH,
2747+ anon_sym_DASH_DASH,
2748+ sym_context,
2749+ ACTIONS(170), 9,
2750+ ts_builtin_sym_end,
2751+ anon_sym_diff,
2752+ aux_sym_file_change_token1,
2753+ anon_sym_Binary,
2754+ anon_sym_index,
2755+ anon_sym_similarity,
2756+ anon_sym_AT_AT,
2757+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2758+ anon_sym_DASH_DASH_DASH_DASH,
2759+ [441] = 2,
2760+ ACTIONS(176), 8,
2761 aux_sym_source_token1,
2762- ACTIONS(89), 1,
2763+ anon_sym_DASH_DASH_DASH,
2764+ anon_sym_PLUS_PLUS_PLUS,
2765+ anon_sym_PLUS,
2766+ anon_sym_PLUS_PLUS,
2767+ anon_sym_DASH,
2768+ anon_sym_DASH_DASH,
2769+ sym_context,
2770+ ACTIONS(174), 9,
2771+ ts_builtin_sym_end,
2772+ anon_sym_diff,
2773+ aux_sym_file_change_token1,
2774+ anon_sym_Binary,
2775+ anon_sym_index,
2776+ anon_sym_similarity,
2777+ anon_sym_AT_AT,
2778+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2779+ anon_sym_DASH_DASH_DASH_DASH,
2780+ [463] = 2,
2781+ ACTIONS(180), 8,
2782+ aux_sym_source_token1,
2783+ anon_sym_DASH_DASH_DASH,
2784+ anon_sym_PLUS_PLUS_PLUS,
2785+ anon_sym_PLUS,
2786+ anon_sym_PLUS_PLUS,
2787+ anon_sym_DASH,
2788+ anon_sym_DASH_DASH,
2789+ sym_context,
2790+ ACTIONS(178), 9,
2791+ ts_builtin_sym_end,
2792+ anon_sym_diff,
2793+ aux_sym_file_change_token1,
2794+ anon_sym_Binary,
2795+ anon_sym_index,
2796+ anon_sym_similarity,
2797+ anon_sym_AT_AT,
2798+ anon_sym_PLUS_PLUS_PLUS_PLUS,
2799+ anon_sym_DASH_DASH_DASH_DASH,
2800+ [485] = 5,
2801+ ACTIONS(182), 1,
2802+ ts_builtin_sym_end,
2803+ ACTIONS(184), 1,
2804+ aux_sym_source_token1,
2805+ ACTIONS(186), 1,
2806 aux_sym_filename_token1,
2807- STATE(7), 1,
2808+ STATE(25), 1,
2809 aux_sym_filename_repeat1,
2810- STATE(23), 1,
2811+ STATE(48), 1,
2812 sym_filename,
2813- [38] = 5,
2814- ACTIONS(89), 1,
2815+ [501] = 4,
2816+ ACTIONS(21), 1,
2817+ anon_sym_AT_AT,
2818+ STATE(18), 1,
2819+ sym_hunks,
2820+ STATE(65), 1,
2821+ sym_location,
2822+ STATE(8), 2,
2823+ sym_hunk,
2824+ aux_sym_hunks_repeat1,
2825+ [515] = 5,
2826+ ACTIONS(186), 1,
2827 aux_sym_filename_token1,
2828- ACTIONS(91), 1,
2829+ ACTIONS(188), 1,
2830 ts_builtin_sym_end,
2831- ACTIONS(93), 1,
2832+ ACTIONS(190), 1,
2833 aux_sym_source_token1,
2834- STATE(7), 1,
2835+ STATE(25), 1,
2836 aux_sym_filename_repeat1,
2837- STATE(24), 1,
2838+ STATE(40), 1,
2839 sym_filename,
2840- [54] = 4,
2841- ACTIONS(95), 1,
2842+ [531] = 4,
2843+ ACTIONS(21), 1,
2844+ anon_sym_AT_AT,
2845+ STATE(16), 1,
2846+ sym_hunks,
2847+ STATE(65), 1,
2848+ sym_location,
2849+ STATE(8), 2,
2850+ sym_hunk,
2851+ aux_sym_hunks_repeat1,
2852+ [545] = 3,
2853+ ACTIONS(194), 1,
2854+ aux_sym_similarity_token1,
2855+ STATE(52), 1,
2856+ sym_mode,
2857+ ACTIONS(192), 2,
2858 ts_builtin_sym_end,
2859- ACTIONS(97), 1,
2860 aux_sym_source_token1,
2861- ACTIONS(99), 1,
2862- aux_sym_filename_token1,
2863- STATE(8), 1,
2864- aux_sym_filename_repeat1,
2865- [67] = 4,
2866- ACTIONS(101), 1,
2867+ [556] = 4,
2868+ ACTIONS(196), 1,
2869 ts_builtin_sym_end,
2870- ACTIONS(103), 1,
2871+ ACTIONS(198), 1,
2872 aux_sym_source_token1,
2873- ACTIONS(105), 1,
2874+ ACTIONS(200), 1,
2875 aux_sym_filename_token1,
2876- STATE(8), 1,
2877+ STATE(24), 1,
2878 aux_sym_filename_repeat1,
2879- [80] = 3,
2880- ACTIONS(110), 1,
2881- aux_sym_similarity_token1,
2882- STATE(29), 1,
2883- sym_mode,
2884- ACTIONS(108), 2,
2885+ [569] = 4,
2886+ ACTIONS(203), 1,
2887 ts_builtin_sym_end,
2888+ ACTIONS(205), 1,
2889 aux_sym_source_token1,
2890- [91] = 3,
2891- ACTIONS(91), 1,
2892+ ACTIONS(207), 1,
2893+ aux_sym_filename_token1,
2894+ STATE(24), 1,
2895+ aux_sym_filename_repeat1,
2896+ [582] = 3,
2897+ ACTIONS(209), 1,
2898+ aux_sym_filename_token1,
2899+ STATE(33), 1,
2900+ aux_sym_filename_repeat1,
2901+ STATE(60), 1,
2902+ sym_filename,
2903+ [592] = 3,
2904+ ACTIONS(211), 1,
2905 ts_builtin_sym_end,
2906- ACTIONS(93), 1,
2907+ ACTIONS(213), 1,
2908 aux_sym_source_token1,
2909- ACTIONS(112), 1,
2910+ ACTIONS(215), 1,
2911 aux_sym_location_token1,
2912- [101] = 3,
2913- ACTIONS(85), 1,
2914+ [602] = 3,
2915+ ACTIONS(186), 1,
2916+ aux_sym_filename_token1,
2917+ STATE(25), 1,
2918+ aux_sym_filename_repeat1,
2919+ STATE(48), 1,
2920+ sym_filename,
2921+ [612] = 2,
2922+ ACTIONS(217), 1,
2923+ anon_sym_file,
2924+ ACTIONS(219), 2,
2925+ anon_sym_from,
2926+ anon_sym_to,
2927+ [620] = 3,
2928+ ACTIONS(186), 1,
2929+ aux_sym_filename_token1,
2930+ STATE(25), 1,
2931+ aux_sym_filename_repeat1,
2932+ STATE(73), 1,
2933+ sym_filename,
2934+ [630] = 3,
2935+ ACTIONS(198), 1,
2936+ anon_sym_differ,
2937+ ACTIONS(221), 1,
2938+ aux_sym_filename_token1,
2939+ STATE(31), 1,
2940+ aux_sym_filename_repeat1,
2941+ [640] = 3,
2942+ ACTIONS(182), 1,
2943 ts_builtin_sym_end,
2944- ACTIONS(87), 1,
2945+ ACTIONS(184), 1,
2946 aux_sym_source_token1,
2947- ACTIONS(114), 1,
2948+ ACTIONS(224), 1,
2949 aux_sym_location_token1,
2950- [111] = 3,
2951- ACTIONS(103), 1,
2952+ [650] = 3,
2953+ ACTIONS(205), 1,
2954 anon_sym_differ,
2955- ACTIONS(116), 1,
2956+ ACTIONS(226), 1,
2957 aux_sym_filename_token1,
2958- STATE(12), 1,
2959+ STATE(31), 1,
2960 aux_sym_filename_repeat1,
2961- [121] = 3,
2962- ACTIONS(119), 1,
2963+ [660] = 3,
2964+ ACTIONS(186), 1,
2965 aux_sym_filename_token1,
2966- STATE(20), 1,
2967+ STATE(25), 1,
2968 aux_sym_filename_repeat1,
2969- STATE(45), 1,
2970+ STATE(41), 1,
2971 sym_filename,
2972- [131] = 3,
2973- ACTIONS(121), 1,
2974+ [670] = 3,
2975+ ACTIONS(188), 1,
2976 ts_builtin_sym_end,
2977- ACTIONS(123), 1,
2978+ ACTIONS(190), 1,
2979 aux_sym_source_token1,
2980- ACTIONS(125), 1,
2981+ ACTIONS(228), 1,
2982 aux_sym_location_token1,
2983- [141] = 3,
2984- ACTIONS(89), 1,
2985- aux_sym_filename_token1,
2986- STATE(7), 1,
2987- aux_sym_filename_repeat1,
2988- STATE(30), 1,
2989- sym_filename,
2990- [151] = 3,
2991- ACTIONS(97), 1,
2992+ [680] = 3,
2993+ ACTIONS(205), 1,
2994 anon_sym_and,
2995- ACTIONS(127), 1,
2996+ ACTIONS(230), 1,
2997 aux_sym_filename_token1,
2998- STATE(19), 1,
2999+ STATE(39), 1,
3000 aux_sym_filename_repeat1,
3001- [161] = 3,
3002- ACTIONS(89), 1,
3003+ [690] = 3,
3004+ ACTIONS(186), 1,
3005 aux_sym_filename_token1,
3006- STATE(7), 1,
3007+ STATE(25), 1,
3008 aux_sym_filename_repeat1,
3009- STATE(32), 1,
3010+ STATE(40), 1,
3011 sym_filename,
3012- [171] = 3,
3013- ACTIONS(129), 1,
3014+ [700] = 3,
3015+ ACTIONS(232), 1,
3016 aux_sym_filename_token1,
3017- STATE(16), 1,
3018+ STATE(36), 1,
3019 aux_sym_filename_repeat1,
3020- STATE(46), 1,
3021+ STATE(70), 1,
3022 sym_filename,
3023- [181] = 3,
3024- ACTIONS(103), 1,
3025+ [710] = 3,
3026+ ACTIONS(198), 1,
3027 anon_sym_and,
3028- ACTIONS(131), 1,
3029- aux_sym_filename_token1,
3030- STATE(19), 1,
3031- aux_sym_filename_repeat1,
3032- [191] = 3,
3033- ACTIONS(97), 1,
3034- anon_sym_differ,
3035- ACTIONS(134), 1,
3036+ ACTIONS(234), 1,
3037 aux_sym_filename_token1,
3038- STATE(12), 1,
3039+ STATE(39), 1,
3040 aux_sym_filename_repeat1,
3041- [201] = 2,
3042- ACTIONS(136), 1,
3043- anon_sym_file,
3044- ACTIONS(138), 2,
3045- anon_sym_from,
3046- anon_sym_to,
3047- [209] = 1,
3048- ACTIONS(140), 2,
3049+ [720] = 1,
3050+ ACTIONS(237), 2,
3051 ts_builtin_sym_end,
3052 aux_sym_source_token1,
3053- [214] = 1,
3054- ACTIONS(142), 2,
3055+ [725] = 1,
3056+ ACTIONS(239), 2,
3057 ts_builtin_sym_end,
3058 aux_sym_source_token1,
3059- [219] = 1,
3060- ACTIONS(144), 2,
3061+ [730] = 2,
3062+ ACTIONS(194), 1,
3063+ aux_sym_similarity_token1,
3064+ STATE(44), 1,
3065+ sym_mode,
3066+ [737] = 1,
3067+ ACTIONS(241), 2,
3068 ts_builtin_sym_end,
3069 aux_sym_source_token1,
3070- [224] = 1,
3071- ACTIONS(146), 2,
3072+ [742] = 1,
3073+ ACTIONS(243), 2,
3074 ts_builtin_sym_end,
3075 aux_sym_source_token1,
3076- [229] = 1,
3077- ACTIONS(148), 2,
3078+ [747] = 2,
3079+ ACTIONS(245), 1,
3080 ts_builtin_sym_end,
3081+ ACTIONS(247), 1,
3082 aux_sym_source_token1,
3083- [234] = 1,
3084- ACTIONS(150), 2,
3085+ [754] = 1,
3086+ ACTIONS(249), 2,
3087 ts_builtin_sym_end,
3088 aux_sym_source_token1,
3089- [239] = 2,
3090- ACTIONS(152), 1,
3091+ [759] = 1,
3092+ ACTIONS(251), 2,
3093 ts_builtin_sym_end,
3094- ACTIONS(154), 1,
3095 aux_sym_source_token1,
3096- [246] = 1,
3097- ACTIONS(156), 2,
3098+ [764] = 1,
3099+ ACTIONS(253), 2,
3100 ts_builtin_sym_end,
3101 aux_sym_source_token1,
3102- [251] = 1,
3103- ACTIONS(158), 2,
3104+ [769] = 2,
3105+ ACTIONS(77), 1,
3106 ts_builtin_sym_end,
3107+ ACTIONS(247), 1,
3108 aux_sym_source_token1,
3109- [256] = 2,
3110- ACTIONS(110), 1,
3111- aux_sym_similarity_token1,
3112- STATE(35), 1,
3113- sym_mode,
3114- [263] = 1,
3115- ACTIONS(160), 2,
3116+ [776] = 2,
3117+ ACTIONS(255), 1,
3118+ anon_sym_PLUS_PLUS_PLUS,
3119+ STATE(59), 1,
3120+ sym_new_file,
3121+ [783] = 1,
3122+ ACTIONS(257), 2,
3123 ts_builtin_sym_end,
3124 aux_sym_source_token1,
3125- [268] = 1,
3126- ACTIONS(162), 2,
3127+ [788] = 1,
3128+ ACTIONS(259), 2,
3129 ts_builtin_sym_end,
3130 aux_sym_source_token1,
3131- [273] = 2,
3132- ACTIONS(77), 1,
3133+ [793] = 1,
3134+ ACTIONS(261), 2,
3135 ts_builtin_sym_end,
3136- ACTIONS(154), 1,
3137 aux_sym_source_token1,
3138- [280] = 1,
3139- ACTIONS(164), 2,
3140- ts_builtin_sym_end,
3141+ [798] = 2,
3142+ ACTIONS(263), 1,
3143 aux_sym_source_token1,
3144- [285] = 1,
3145- ACTIONS(166), 2,
3146+ STATE(12), 1,
3147+ aux_sym_changes_repeat1,
3148+ [805] = 2,
3149+ ACTIONS(255), 1,
3150+ anon_sym_PLUS_PLUS_PLUS,
3151+ STATE(63), 1,
3152+ sym_new_file,
3153+ [812] = 1,
3154+ ACTIONS(265), 2,
3155 ts_builtin_sym_end,
3156 aux_sym_source_token1,
3157- [290] = 1,
3158- ACTIONS(168), 1,
3159- anon_sym_AT_AT2,
3160- [294] = 1,
3161- ACTIONS(154), 1,
3162- aux_sym_source_token1,
3163- [298] = 1,
3164- ACTIONS(170), 1,
3165- sym_linerange,
3166- [302] = 1,
3167- ACTIONS(172), 1,
3168+ [817] = 1,
3169+ ACTIONS(267), 1,
3170 anon_sym_DOT_DOT,
3171- [306] = 1,
3172- ACTIONS(174), 1,
3173- anon_sym_mode,
3174- [310] = 1,
3175- ACTIONS(176), 1,
3176+ [821] = 1,
3177+ ACTIONS(269), 1,
3178+ aux_sym_source_token1,
3179+ [825] = 1,
3180+ ACTIONS(271), 1,
3181+ aux_sym_source_token1,
3182+ [829] = 1,
3183+ ACTIONS(273), 1,
3184+ anon_sym_differ,
3185+ [833] = 1,
3186+ ACTIONS(247), 1,
3187+ aux_sym_source_token1,
3188+ [837] = 1,
3189+ ACTIONS(275), 1,
3190+ aux_sym_source_token1,
3191+ [841] = 1,
3192+ ACTIONS(277), 1,
3193+ aux_sym_source_token1,
3194+ [845] = 1,
3195+ ACTIONS(279), 1,
3196+ anon_sym_DASH_DASHgit,
3197+ [849] = 1,
3198+ ACTIONS(281), 1,
3199+ aux_sym_source_token1,
3200+ [853] = 1,
3201+ ACTIONS(283), 1,
3202+ aux_sym_source_token1,
3203+ [857] = 1,
3204+ ACTIONS(285), 1,
3205+ anon_sym_AT_AT2,
3206+ [861] = 1,
3207+ ACTIONS(287), 1,
3208 anon_sym_PERCENT,
3209- [314] = 1,
3210- ACTIONS(178), 1,
3211+ [865] = 1,
3212+ ACTIONS(289), 1,
3213 sym_commit,
3214- [318] = 1,
3215- ACTIONS(180), 1,
3216- ts_builtin_sym_end,
3217- [322] = 1,
3218- ACTIONS(182), 1,
3219- anon_sym_differ,
3220- [326] = 1,
3221- ACTIONS(184), 1,
3222+ [869] = 1,
3223+ ACTIONS(291), 1,
3224 anon_sym_and,
3225- [330] = 1,
3226- ACTIONS(186), 1,
3227- aux_sym_similarity_token1,
3228- [334] = 1,
3229+ [873] = 1,
3230 ACTIONS(188), 1,
3231- anon_sym_DASH_DASHgit,
3232- [338] = 1,
3233- ACTIONS(190), 1,
3234+ aux_sym_source_token1,
3235+ [877] = 1,
3236+ ACTIONS(182), 1,
3237+ aux_sym_source_token1,
3238+ [881] = 1,
3239+ ACTIONS(293), 1,
3240+ aux_sym_source_token1,
3241+ [885] = 1,
3242+ ACTIONS(295), 1,
3243 sym_linerange,
3244- [342] = 1,
3245- ACTIONS(192), 1,
3246+ [889] = 1,
3247+ ACTIONS(297), 1,
3248+ aux_sym_similarity_token1,
3249+ [893] = 1,
3250+ ACTIONS(299), 1,
3251+ anon_sym_mode,
3252+ [897] = 1,
3253+ ACTIONS(301), 1,
3254+ aux_sym_source_token1,
3255+ [901] = 1,
3256+ ACTIONS(303), 1,
3257+ ts_builtin_sym_end,
3258+ [905] = 1,
3259+ ACTIONS(305), 1,
3260+ sym_linerange,
3261+ [909] = 1,
3262+ ACTIONS(307), 1,
3263 anon_sym_index2,
3264- [346] = 1,
3265- ACTIONS(194), 1,
3266+ [913] = 1,
3267+ ACTIONS(309), 1,
3268 sym_commit,
3269- [350] = 1,
3270- ACTIONS(196), 1,
3271+ [917] = 1,
3272+ ACTIONS(311), 1,
3273 anon_sym_files,
3274 };
3275
3276 static const uint32_t ts_small_parse_table_map[] = {
3277 [SMALL_STATE(4)] = 0,
3278- [SMALL_STATE(5)] = 22,
3279- [SMALL_STATE(6)] = 38,
3280- [SMALL_STATE(7)] = 54,
3281- [SMALL_STATE(8)] = 67,
3282- [SMALL_STATE(9)] = 80,
3283- [SMALL_STATE(10)] = 91,
3284- [SMALL_STATE(11)] = 101,
3285- [SMALL_STATE(12)] = 111,
3286- [SMALL_STATE(13)] = 121,
3287- [SMALL_STATE(14)] = 131,
3288- [SMALL_STATE(15)] = 141,
3289- [SMALL_STATE(16)] = 151,
3290- [SMALL_STATE(17)] = 161,
3291- [SMALL_STATE(18)] = 171,
3292- [SMALL_STATE(19)] = 181,
3293- [SMALL_STATE(20)] = 191,
3294- [SMALL_STATE(21)] = 201,
3295- [SMALL_STATE(22)] = 209,
3296- [SMALL_STATE(23)] = 214,
3297- [SMALL_STATE(24)] = 219,
3298- [SMALL_STATE(25)] = 224,
3299- [SMALL_STATE(26)] = 229,
3300- [SMALL_STATE(27)] = 234,
3301- [SMALL_STATE(28)] = 239,
3302- [SMALL_STATE(29)] = 246,
3303- [SMALL_STATE(30)] = 251,
3304- [SMALL_STATE(31)] = 256,
3305- [SMALL_STATE(32)] = 263,
3306- [SMALL_STATE(33)] = 268,
3307- [SMALL_STATE(34)] = 273,
3308- [SMALL_STATE(35)] = 280,
3309- [SMALL_STATE(36)] = 285,
3310- [SMALL_STATE(37)] = 290,
3311- [SMALL_STATE(38)] = 294,
3312- [SMALL_STATE(39)] = 298,
3313- [SMALL_STATE(40)] = 302,
3314- [SMALL_STATE(41)] = 306,
3315- [SMALL_STATE(42)] = 310,
3316- [SMALL_STATE(43)] = 314,
3317- [SMALL_STATE(44)] = 318,
3318- [SMALL_STATE(45)] = 322,
3319- [SMALL_STATE(46)] = 326,
3320- [SMALL_STATE(47)] = 330,
3321- [SMALL_STATE(48)] = 334,
3322- [SMALL_STATE(49)] = 338,
3323- [SMALL_STATE(50)] = 342,
3324- [SMALL_STATE(51)] = 346,
3325- [SMALL_STATE(52)] = 350,
3326+ [SMALL_STATE(5)] = 44,
3327+ [SMALL_STATE(6)] = 88,
3328+ [SMALL_STATE(7)] = 127,
3329+ [SMALL_STATE(8)] = 173,
3330+ [SMALL_STATE(9)] = 204,
3331+ [SMALL_STATE(10)] = 235,
3332+ [SMALL_STATE(11)] = 278,
3333+ [SMALL_STATE(12)] = 321,
3334+ [SMALL_STATE(13)] = 348,
3335+ [SMALL_STATE(14)] = 375,
3336+ [SMALL_STATE(15)] = 397,
3337+ [SMALL_STATE(16)] = 419,
3338+ [SMALL_STATE(17)] = 441,
3339+ [SMALL_STATE(18)] = 463,
3340+ [SMALL_STATE(19)] = 485,
3341+ [SMALL_STATE(20)] = 501,
3342+ [SMALL_STATE(21)] = 515,
3343+ [SMALL_STATE(22)] = 531,
3344+ [SMALL_STATE(23)] = 545,
3345+ [SMALL_STATE(24)] = 556,
3346+ [SMALL_STATE(25)] = 569,
3347+ [SMALL_STATE(26)] = 582,
3348+ [SMALL_STATE(27)] = 592,
3349+ [SMALL_STATE(28)] = 602,
3350+ [SMALL_STATE(29)] = 612,
3351+ [SMALL_STATE(30)] = 620,
3352+ [SMALL_STATE(31)] = 630,
3353+ [SMALL_STATE(32)] = 640,
3354+ [SMALL_STATE(33)] = 650,
3355+ [SMALL_STATE(34)] = 660,
3356+ [SMALL_STATE(35)] = 670,
3357+ [SMALL_STATE(36)] = 680,
3358+ [SMALL_STATE(37)] = 690,
3359+ [SMALL_STATE(38)] = 700,
3360+ [SMALL_STATE(39)] = 710,
3361+ [SMALL_STATE(40)] = 720,
3362+ [SMALL_STATE(41)] = 725,
3363+ [SMALL_STATE(42)] = 730,
3364+ [SMALL_STATE(43)] = 737,
3365+ [SMALL_STATE(44)] = 742,
3366+ [SMALL_STATE(45)] = 747,
3367+ [SMALL_STATE(46)] = 754,
3368+ [SMALL_STATE(47)] = 759,
3369+ [SMALL_STATE(48)] = 764,
3370+ [SMALL_STATE(49)] = 769,
3371+ [SMALL_STATE(50)] = 776,
3372+ [SMALL_STATE(51)] = 783,
3373+ [SMALL_STATE(52)] = 788,
3374+ [SMALL_STATE(53)] = 793,
3375+ [SMALL_STATE(54)] = 798,
3376+ [SMALL_STATE(55)] = 805,
3377+ [SMALL_STATE(56)] = 812,
3378+ [SMALL_STATE(57)] = 817,
3379+ [SMALL_STATE(58)] = 821,
3380+ [SMALL_STATE(59)] = 825,
3381+ [SMALL_STATE(60)] = 829,
3382+ [SMALL_STATE(61)] = 833,
3383+ [SMALL_STATE(62)] = 837,
3384+ [SMALL_STATE(63)] = 841,
3385+ [SMALL_STATE(64)] = 845,
3386+ [SMALL_STATE(65)] = 849,
3387+ [SMALL_STATE(66)] = 853,
3388+ [SMALL_STATE(67)] = 857,
3389+ [SMALL_STATE(68)] = 861,
3390+ [SMALL_STATE(69)] = 865,
3391+ [SMALL_STATE(70)] = 869,
3392+ [SMALL_STATE(71)] = 873,
3393+ [SMALL_STATE(72)] = 877,
3394+ [SMALL_STATE(73)] = 881,
3395+ [SMALL_STATE(74)] = 885,
3396+ [SMALL_STATE(75)] = 889,
3397+ [SMALL_STATE(76)] = 893,
3398+ [SMALL_STATE(77)] = 897,
3399+ [SMALL_STATE(78)] = 901,
3400+ [SMALL_STATE(79)] = 905,
3401+ [SMALL_STATE(80)] = 909,
3402+ [SMALL_STATE(81)] = 913,
3403+ [SMALL_STATE(82)] = 917,
3404 };
3405
3406 static const TSParseActionEntry ts_parse_actions[] = {
3407 @@ -2201,93 +2836,144 @@ static const TSParseActionEntry ts_parse_actions[] = {
3408 [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(),
3409 [3] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 0),
3410 [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3),
3411- [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48),
3412- [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21),
3413- [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52),
3414- [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51),
3415- [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
3416- [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5),
3417- [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6),
3418- [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49),
3419- [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10),
3420- [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10),
3421- [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11),
3422- [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11),
3423- [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34),
3424+ [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64),
3425+ [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29),
3426+ [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82),
3427+ [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
3428+ [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80),
3429+ [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21),
3430+ [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19),
3431+ [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79),
3432+ [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32),
3433+ [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32),
3434+ [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35),
3435+ [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35),
3436+ [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49),
3437 [33] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2),
3438 [35] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(2),
3439- [38] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(48),
3440- [41] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(21),
3441- [44] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(52),
3442- [47] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(51),
3443- [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(50),
3444- [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(5),
3445- [56] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(6),
3446- [59] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(49),
3447- [62] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(10),
3448- [65] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(10),
3449- [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(11),
3450- [71] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(11),
3451- [74] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(38),
3452+ [38] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(64),
3453+ [41] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(29),
3454+ [44] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(82),
3455+ [47] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(81),
3456+ [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(80),
3457+ [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(21),
3458+ [56] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(19),
3459+ [59] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(79),
3460+ [62] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(32),
3461+ [65] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(32),
3462+ [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(35),
3463+ [71] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(35),
3464+ [74] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(61),
3465 [77] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 1),
3466 [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2),
3467- [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28),
3468- [83] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2),
3469- [85] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 1),
3470- [87] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deletion, 1),
3471- [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7),
3472- [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 1),
3473- [93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_addition, 1),
3474- [95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filename, 1),
3475- [97] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filename, 1),
3476- [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8),
3477- [101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2),
3478- [103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2),
3479- [105] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(8),
3480- [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 4),
3481- [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
3482- [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
3483- [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26),
3484- [116] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(12),
3485- [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
3486- [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 4),
3487- [123] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location, 4),
3488- [125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27),
3489- [127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19),
3490- [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16),
3491- [131] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(19),
3492- [134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12),
3493- [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41),
3494- [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17),
3495- [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 2),
3496- [142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_old_file, 2),
3497- [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_file, 2),
3498- [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_change, 6),
3499- [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 2),
3500- [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 5),
3501- [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 2),
3502- [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4),
3503- [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5),
3504- [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command, 3),
3505- [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 3),
3506- [162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_similarity, 4, .production_id = 1),
3507- [164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 4),
3508- [166] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mode, 1),
3509- [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14),
3510- [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37),
3511- [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43),
3512- [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31),
3513- [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33),
3514- [178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9),
3515- [180] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
3516- [182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
3517- [184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13),
3518- [186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42),
3519- [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15),
3520- [190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39),
3521- [192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
3522- [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
3523- [196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
3524+ [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45),
3525+ [83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3),
3526+ [85] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3),
3527+ [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(37),
3528+ [89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2),
3529+ [91] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2),
3530+ [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2),
3531+ [95] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2),
3532+ [97] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(29),
3533+ [100] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(82),
3534+ [103] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(81),
3535+ [106] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(80),
3536+ [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunk, 2, .production_id = 2),
3537+ [111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunk, 2, .production_id = 2),
3538+ [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71),
3539+ [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72),
3540+ [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54),
3541+ [119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunks, 1),
3542+ [121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunks, 1),
3543+ [123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hunks_repeat1, 2),
3544+ [125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hunks_repeat1, 2),
3545+ [127] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hunks_repeat1, 2), SHIFT_REPEAT(79),
3546+ [130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2),
3547+ [132] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2),
3548+ [134] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(71),
3549+ [137] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(72),
3550+ [140] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(32),
3551+ [143] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(32),
3552+ [146] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(35),
3553+ [149] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(35),
3554+ [152] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(54),
3555+ [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_changes, 1),
3556+ [157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_changes, 1),
3557+ [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13),
3558+ [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_changes_repeat1, 2),
3559+ [163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat1, 2), SHIFT_REPEAT(13),
3560+ [166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_changes_repeat1, 2),
3561+ [168] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2),
3562+ [170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 7),
3563+ [172] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 7),
3564+ [174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunk, 3, .production_id = 3),
3565+ [176] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunk, 3, .production_id = 3),
3566+ [178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 8),
3567+ [180] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 8),
3568+ [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 1),
3569+ [184] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_addition, 1),
3570+ [186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
3571+ [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 1),
3572+ [190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deletion, 1),
3573+ [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 4),
3574+ [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43),
3575+ [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2),
3576+ [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2),
3577+ [200] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(24),
3578+ [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filename, 1),
3579+ [205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filename, 1),
3580+ [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
3581+ [209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33),
3582+ [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 4),
3583+ [213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location, 4),
3584+ [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53),
3585+ [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
3586+ [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34),
3587+ [221] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(31),
3588+ [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51),
3589+ [226] = {.entry = {.count = 1, .reusable = false}}, SHIFT(31),
3590+ [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46),
3591+ [230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(39),
3592+ [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
3593+ [234] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(39),
3594+ [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_old_file, 2),
3595+ [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 3),
3596+ [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mode, 1),
3597+ [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 4),
3598+ [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 2),
3599+ [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14),
3600+ [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 2),
3601+ [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_similarity, 4, .production_id = 1),
3602+ [253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_file, 2),
3603+ [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28),
3604+ [257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 2),
3605+ [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5),
3606+ [261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 5),
3607+ [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
3608+ [265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_change, 6),
3609+ [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69),
3610+ [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
3611+ [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
3612+ [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
3613+ [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55),
3614+ [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
3615+ [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
3616+ [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7),
3617+ [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15),
3618+ [285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27),
3619+ [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
3620+ [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
3621+ [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26),
3622+ [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command, 3),
3623+ [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67),
3624+ [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68),
3625+ [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42),
3626+ [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5),
3627+ [303] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
3628+ [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74),
3629+ [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75),
3630+ [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
3631+ [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38),
3632 };
3633
3634 #ifdef __cplusplus