Author: Omar Valdez [80359343+ValdezFOmar@users.noreply.github.com]
Hash: 19dd5aa52fe339a1d974768a09ee2537303e8ca5
Timestamp: Sun, 30 Jun 2024 13:04:40 +0000 (3 months ago)

+879 -774 +/-3 browse
Generate parser
1diff --git a/src/grammar.json b/src/grammar.json
2index 0281555..fce164f 100644
3--- a/src/grammar.json
4+++ b/src/grammar.json
5 @@ -93,6 +93,10 @@
6 {
7 "type": "SYMBOL",
8 "name": "context"
9+ },
10+ {
11+ "type": "SYMBOL",
12+ "name": "comment"
13 }
14 ]
15 },
16 @@ -733,6 +737,30 @@
17 }
18 }
19 },
20+ "comment": {
21+ "type": "SEQ",
22+ "members": [
23+ {
24+ "type": "IMMEDIATE_TOKEN",
25+ "content": {
26+ "type": "STRING",
27+ "value": "#"
28+ }
29+ },
30+ {
31+ "type": "CHOICE",
32+ "members": [
33+ {
34+ "type": "PATTERN",
35+ "value": "[^\\r\\n]+"
36+ },
37+ {
38+ "type": "BLANK"
39+ }
40+ ]
41+ }
42+ ]
43+ },
44 "linerange": {
45 "type": "PATTERN",
46 "value": "[-\\+]\\d+(,\\d+)?"
47 diff --git a/src/node-types.json b/src/node-types.json
48index 8d4c0a0..1930c32 100644
49--- a/src/node-types.json
50+++ b/src/node-types.json
51 @@ -105,6 +105,11 @@
52 }
53 },
54 {
55+ "type": "comment",
56+ "named": true,
57+ "fields": {}
58+ },
59+ {
60 "type": "deletion",
61 "named": true,
62 "fields": {}
63 @@ -279,6 +284,10 @@
64 "named": true
65 },
66 {
67+ "type": "comment",
68+ "named": true
69+ },
70+ {
71 "type": "context",
72 "named": true
73 },
74 @@ -314,6 +323,10 @@
75 }
76 },
77 {
78+ "type": "#",
79+ "named": false
80+ },
81+ {
82 "type": "%",
83 "named": false
84 },
85 diff --git a/src/parser.c b/src/parser.c
86index 4b6c542..518d164 100644
87--- a/src/parser.c
88+++ b/src/parser.c
89 @@ -6,11 +6,11 @@
90 #endif
91
92 #define LANGUAGE_VERSION 14
93- #define STATE_COUNT 87
94+ #define STATE_COUNT 89
95 #define LARGE_STATE_COUNT 4
96- #define SYMBOL_COUNT 61
97+ #define SYMBOL_COUNT 63
98 #define ALIAS_COUNT 1
99- #define TOKEN_COUNT 37
100+ #define TOKEN_COUNT 38
101 #define EXTERNAL_TOKEN_COUNT 0
102 #define FIELD_COUNT 2
103 #define MAX_ALIAS_SEQUENCE_LENGTH 8
104 @@ -50,34 +50,36 @@ enum {
105 anon_sym_DASH_DASH = 31,
106 anon_sym_DASH_DASH_DASH_DASH = 32,
107 sym_context = 33,
108- sym_linerange = 34,
109- aux_sym_filename_token1 = 35,
110- sym_commit = 36,
111- sym_source = 37,
112- sym__line = 38,
113- sym_block = 39,
114- sym_hunks = 40,
115- sym_hunk = 41,
116- sym_changes = 42,
117- sym_command = 43,
118- sym_file_change = 44,
119- sym_binary_change = 45,
120- sym_index = 46,
121- sym_similarity = 47,
122- sym_old_file = 48,
123- sym_new_file = 49,
124- sym_location = 50,
125- sym_addition = 51,
126- sym_deletion = 52,
127- sym_filename = 53,
128- sym_mode = 54,
129- aux_sym_source_repeat1 = 55,
130- aux_sym_block_repeat1 = 56,
131- aux_sym_hunks_repeat1 = 57,
132- aux_sym_changes_repeat1 = 58,
133- aux_sym_changes_repeat2 = 59,
134- aux_sym_filename_repeat1 = 60,
135- alias_sym_score = 61,
136+ anon_sym_POUND = 34,
137+ sym_linerange = 35,
138+ aux_sym_filename_token1 = 36,
139+ sym_commit = 37,
140+ sym_source = 38,
141+ sym__line = 39,
142+ sym_block = 40,
143+ sym_hunks = 41,
144+ sym_hunk = 42,
145+ sym_changes = 43,
146+ sym_command = 44,
147+ sym_file_change = 45,
148+ sym_binary_change = 46,
149+ sym_index = 47,
150+ sym_similarity = 48,
151+ sym_old_file = 49,
152+ sym_new_file = 50,
153+ sym_location = 51,
154+ sym_addition = 52,
155+ sym_deletion = 53,
156+ sym_comment = 54,
157+ sym_filename = 55,
158+ sym_mode = 56,
159+ aux_sym_source_repeat1 = 57,
160+ aux_sym_block_repeat1 = 58,
161+ aux_sym_hunks_repeat1 = 59,
162+ aux_sym_changes_repeat1 = 60,
163+ aux_sym_changes_repeat2 = 61,
164+ aux_sym_filename_repeat1 = 62,
165+ alias_sym_score = 63,
166 };
167
168 static const char * const ts_symbol_names[] = {
169 @@ -115,6 +117,7 @@ static const char * const ts_symbol_names[] = {
170 [anon_sym_DASH_DASH] = "--",
171 [anon_sym_DASH_DASH_DASH_DASH] = "----",
172 [sym_context] = "context",
173+ [anon_sym_POUND] = "#",
174 [sym_linerange] = "linerange",
175 [aux_sym_filename_token1] = "filename_token1",
176 [sym_commit] = "commit",
177 @@ -134,6 +137,7 @@ static const char * const ts_symbol_names[] = {
178 [sym_location] = "location",
179 [sym_addition] = "addition",
180 [sym_deletion] = "deletion",
181+ [sym_comment] = "comment",
182 [sym_filename] = "filename",
183 [sym_mode] = "mode",
184 [aux_sym_source_repeat1] = "source_repeat1",
185 @@ -180,6 +184,7 @@ static const TSSymbol ts_symbol_map[] = {
186 [anon_sym_DASH_DASH] = anon_sym_DASH_DASH,
187 [anon_sym_DASH_DASH_DASH_DASH] = anon_sym_DASH_DASH_DASH_DASH,
188 [sym_context] = sym_context,
189+ [anon_sym_POUND] = anon_sym_POUND,
190 [sym_linerange] = sym_linerange,
191 [aux_sym_filename_token1] = aux_sym_filename_token1,
192 [sym_commit] = sym_commit,
193 @@ -199,6 +204,7 @@ static const TSSymbol ts_symbol_map[] = {
194 [sym_location] = sym_location,
195 [sym_addition] = sym_addition,
196 [sym_deletion] = sym_deletion,
197+ [sym_comment] = sym_comment,
198 [sym_filename] = sym_filename,
199 [sym_mode] = sym_mode,
200 [aux_sym_source_repeat1] = aux_sym_source_repeat1,
201 @@ -347,6 +353,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
202 .visible = true,
203 .named = true,
204 },
205+ [anon_sym_POUND] = {
206+ .visible = true,
207+ .named = false,
208+ },
209 [sym_linerange] = {
210 .visible = true,
211 .named = true,
212 @@ -423,6 +433,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
213 .visible = true,
214 .named = true,
215 },
216+ [sym_comment] = {
217+ .visible = true,
218+ .named = true,
219+ },
220 [sym_filename] = {
221 .visible = true,
222 .named = true,
223 @@ -524,18 +538,18 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
224 [24] = 24,
225 [25] = 25,
226 [26] = 26,
227- [27] = 24,
228+ [27] = 25,
229 [28] = 28,
230 [29] = 29,
231 [30] = 30,
232 [31] = 31,
233 [32] = 32,
234- [33] = 23,
235+ [33] = 33,
236 [34] = 34,
237- [35] = 24,
238+ [35] = 23,
239 [36] = 36,
240- [37] = 23,
241- [38] = 38,
242+ [37] = 25,
243+ [38] = 23,
244 [39] = 39,
245 [40] = 40,
246 [41] = 41,
247 @@ -584,6 +598,8 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
248 [84] = 84,
249 [85] = 85,
250 [86] = 86,
251+ [87] = 87,
252+ [88] = 88,
253 };
254
255 static bool ts_lex(TSLexer *lexer, TSStateId state) {
256 @@ -594,6 +610,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
257 if (eof) ADVANCE(88);
258 if (lookahead == '\n') ADVANCE(89);
259 if (lookahead == '\r') ADVANCE(1);
260+ if (lookahead == '#') ADVANCE(204);
261 if (lookahead == '%') ADVANCE(151);
262 if (lookahead == '+') ADVANCE(159);
263 if (lookahead == '-') ADVANCE(162);
264 @@ -612,7 +629,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
265 if (lookahead == 't') ADVANCE(59);
266 if (('b' <= lookahead && lookahead <= 'e')) ADVANCE(81);
267 if (('\t' <= lookahead && lookahead <= '\f') ||
268- lookahead == ' ') SKIP(82)
269+ lookahead == ' ') SKIP(83)
270 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121);
271 END_STATE();
272 case 1:
273 @@ -620,7 +637,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
274 END_STATE();
275 case 2:
276 if (lookahead == '+') ADVANCE(3);
277- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(204);
278+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(205);
279 END_STATE();
280 case 3:
281 if (lookahead == '+') ADVANCE(153);
282 @@ -638,13 +655,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
283 if (lookahead == 'a') ADVANCE(62);
284 END_STATE();
285 case 8:
286- if (lookahead == 'a') ADVANCE(213);
287+ if (lookahead == 'a') ADVANCE(214);
288 if (lookahead == '\t' ||
289 lookahead == ' ') SKIP(8)
290 if (lookahead == 11 ||
291- lookahead == '\f') ADVANCE(206);
292+ lookahead == '\f') ADVANCE(207);
293 if (lookahead != 0 &&
294- (lookahead < '\n' || '\r' < lookahead)) ADVANCE(216);
295+ (lookahead < '\n' || '\r' < lookahead)) ADVANCE(217);
296 END_STATE();
297 case 9:
298 if (lookahead == 'a') ADVANCE(64);
299 @@ -662,13 +679,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
300 if (lookahead == 'd') ADVANCE(93);
301 END_STATE();
302 case 14:
303- if (lookahead == 'd') ADVANCE(212);
304+ if (lookahead == 'd') ADVANCE(213);
305 if (lookahead == '\t' ||
306 lookahead == ' ') SKIP(14)
307 if (lookahead == 11 ||
308- lookahead == '\f') ADVANCE(207);
309+ lookahead == '\f') ADVANCE(208);
310 if (lookahead != 0 &&
311- (lookahead < '\n' || '\r' < lookahead)) ADVANCE(216);
312+ (lookahead < '\n' || '\r' < lookahead)) ADVANCE(217);
313 END_STATE();
314 case 15:
315 if (lookahead == 'd') ADVANCE(23);
316 @@ -876,14 +893,14 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
317 ('a' <= lookahead && lookahead <= 'z')) ADVANCE(91);
318 END_STATE();
319 case 74:
320- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(204);
321+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(205);
322 END_STATE();
323 case 75:
324- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(205);
325+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(206);
326 END_STATE();
327 case 76:
328 if (('0' <= lookahead && lookahead <= '9') ||
329- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(250);
330+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(251);
331 END_STATE();
332 case 77:
333 if (('0' <= lookahead && lookahead <= '9') ||
334 @@ -909,6 +926,25 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
335 if (eof) ADVANCE(88);
336 if (lookahead == '\n') ADVANCE(89);
337 if (lookahead == '\r') ADVANCE(1);
338+ if (lookahead == '#') ADVANCE(204);
339+ if (lookahead == '+') ADVANCE(159);
340+ if (lookahead == '-') ADVANCE(162);
341+ if (lookahead == '@') ADVANCE(166);
342+ if (lookahead == 'B') ADVANCE(184);
343+ if (lookahead == 'd') ADVANCE(177);
344+ if (lookahead == 'i') ADVANCE(192);
345+ if (lookahead == 'n') ADVANCE(174);
346+ if (lookahead == 'o') ADVANCE(187);
347+ if (lookahead == 'r') ADVANCE(179);
348+ if (lookahead == 's') ADVANCE(183);
349+ if (('\t' <= lookahead && lookahead <= '\f') ||
350+ lookahead == ' ') ADVANCE(165);
351+ if (lookahead != 0) ADVANCE(203);
352+ END_STATE();
353+ case 83:
354+ if (eof) ADVANCE(88);
355+ if (lookahead == '\n') ADVANCE(89);
356+ if (lookahead == '\r') ADVANCE(1);
357 if (lookahead == '%') ADVANCE(151);
358 if (lookahead == '.') ADVANCE(4);
359 if (lookahead == '@') ADVANCE(6);
360 @@ -923,27 +959,9 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
361 if (lookahead == 't') ADVANCE(59);
362 if (('b' <= lookahead && lookahead <= 'e')) ADVANCE(81);
363 if (('\t' <= lookahead && lookahead <= '\f') ||
364- lookahead == ' ') SKIP(82)
365+ lookahead == ' ') SKIP(83)
366 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121);
367 END_STATE();
368- case 83:
369- if (eof) ADVANCE(88);
370- if (lookahead == '\n') ADVANCE(89);
371- if (lookahead == '\r') ADVANCE(1);
372- if (lookahead == '+') ADVANCE(159);
373- if (lookahead == '-') ADVANCE(162);
374- if (lookahead == '@') ADVANCE(166);
375- if (lookahead == 'B') ADVANCE(184);
376- if (lookahead == 'd') ADVANCE(177);
377- if (lookahead == 'i') ADVANCE(192);
378- if (lookahead == 'n') ADVANCE(174);
379- if (lookahead == 'o') ADVANCE(187);
380- if (lookahead == 'r') ADVANCE(179);
381- if (lookahead == 's') ADVANCE(183);
382- if (('\t' <= lookahead && lookahead <= '\f') ||
383- lookahead == ' ') ADVANCE(165);
384- if (lookahead != 0) ADVANCE(203);
385- END_STATE();
386 case 84:
387 if (eof) ADVANCE(88);
388 if (lookahead == '\n') ADVANCE(89);
389 @@ -981,8 +999,8 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
390 if (lookahead == '\t' ||
391 lookahead == ' ') SKIP(86)
392 if (lookahead == 11 ||
393- lookahead == '\f') ADVANCE(215);
394- if (lookahead != 0) ADVANCE(216);
395+ lookahead == '\f') ADVANCE(216);
396+ if (lookahead != 0) ADVANCE(217);
397 END_STATE();
398 case 87:
399 if (eof) ADVANCE(88);
400 @@ -1052,7 +1070,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
401 lookahead != '\t' &&
402 lookahead != '\n' &&
403 lookahead != '\r' &&
404- lookahead != ' ') ADVANCE(216);
405+ lookahead != ' ') ADVANCE(217);
406 END_STATE();
407 case 105:
408 ACCEPT_TOKEN(anon_sym_differ);
409 @@ -1063,7 +1081,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
410 lookahead != '\t' &&
411 lookahead != '\n' &&
412 lookahead != '\r' &&
413- lookahead != ' ') ADVANCE(216);
414+ lookahead != ' ') ADVANCE(217);
415 END_STATE();
416 case 107:
417 ACCEPT_TOKEN(anon_sym_index);
418 @@ -1079,12 +1097,12 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
419 END_STATE();
420 case 111:
421 ACCEPT_TOKEN(aux_sym_similarity_token1);
422- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(250);
423+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(251);
424 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(149);
425 END_STATE();
426 case 112:
427 ACCEPT_TOKEN(aux_sym_similarity_token1);
428- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(217);
429+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(218);
430 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(150);
431 END_STATE();
432 case 113:
433 @@ -1094,7 +1112,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
434 END_STATE();
435 case 114:
436 ACCEPT_TOKEN(aux_sym_similarity_token1);
437- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(218);
438+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(219);
439 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112);
440 END_STATE();
441 case 115:
442 @@ -1104,7 +1122,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
443 END_STATE();
444 case 116:
445 ACCEPT_TOKEN(aux_sym_similarity_token1);
446- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(219);
447+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(220);
448 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(114);
449 END_STATE();
450 case 117:
451 @@ -1114,7 +1132,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
452 END_STATE();
453 case 118:
454 ACCEPT_TOKEN(aux_sym_similarity_token1);
455- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(220);
456+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(221);
457 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(116);
458 END_STATE();
459 case 119:
460 @@ -1124,7 +1142,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
461 END_STATE();
462 case 120:
463 ACCEPT_TOKEN(aux_sym_similarity_token1);
464- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(221);
465+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(222);
466 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(118);
467 END_STATE();
468 case 121:
469 @@ -1134,142 +1152,142 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
470 END_STATE();
471 case 122:
472 ACCEPT_TOKEN(aux_sym_similarity_token1);
473- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(222);
474+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(223);
475 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120);
476 END_STATE();
477 case 123:
478 ACCEPT_TOKEN(aux_sym_similarity_token1);
479- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(223);
480+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(224);
481 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(122);
482 END_STATE();
483 case 124:
484 ACCEPT_TOKEN(aux_sym_similarity_token1);
485- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(224);
486+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(225);
487 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(123);
488 END_STATE();
489 case 125:
490 ACCEPT_TOKEN(aux_sym_similarity_token1);
491- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(225);
492+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(226);
493 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(124);
494 END_STATE();
495 case 126:
496 ACCEPT_TOKEN(aux_sym_similarity_token1);
497- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(226);
498+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(227);
499 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(125);
500 END_STATE();
501 case 127:
502 ACCEPT_TOKEN(aux_sym_similarity_token1);
503- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(227);
504+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(228);
505 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(126);
506 END_STATE();
507 case 128:
508 ACCEPT_TOKEN(aux_sym_similarity_token1);
509- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(228);
510+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(229);
511 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(127);
512 END_STATE();
513 case 129:
514 ACCEPT_TOKEN(aux_sym_similarity_token1);
515- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(229);
516+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(230);
517 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(128);
518 END_STATE();
519 case 130:
520 ACCEPT_TOKEN(aux_sym_similarity_token1);
521- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(230);
522+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(231);
523 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(129);
524 END_STATE();
525 case 131:
526 ACCEPT_TOKEN(aux_sym_similarity_token1);
527- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(231);
528+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(232);
529 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130);
530 END_STATE();
531 case 132:
532 ACCEPT_TOKEN(aux_sym_similarity_token1);
533- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(232);
534+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(233);
535 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(131);
536 END_STATE();
537 case 133:
538 ACCEPT_TOKEN(aux_sym_similarity_token1);
539- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(233);
540+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(234);
541 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(132);
542 END_STATE();
543 case 134:
544 ACCEPT_TOKEN(aux_sym_similarity_token1);
545- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(234);
546+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(235);
547 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(133);
548 END_STATE();
549 case 135:
550 ACCEPT_TOKEN(aux_sym_similarity_token1);
551- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(235);
552+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(236);
553 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(134);
554 END_STATE();
555 case 136:
556 ACCEPT_TOKEN(aux_sym_similarity_token1);
557- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(236);
558+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(237);
559 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(135);
560 END_STATE();
561 case 137:
562 ACCEPT_TOKEN(aux_sym_similarity_token1);
563- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(237);
564+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(238);
565 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136);
566 END_STATE();
567 case 138:
568 ACCEPT_TOKEN(aux_sym_similarity_token1);
569- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(238);
570+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(239);
571 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137);
572 END_STATE();
573 case 139:
574 ACCEPT_TOKEN(aux_sym_similarity_token1);
575- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(239);
576+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(240);
577 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(138);
578 END_STATE();
579 case 140:
580 ACCEPT_TOKEN(aux_sym_similarity_token1);
581- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(240);
582+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(241);
583 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(139);
584 END_STATE();
585 case 141:
586 ACCEPT_TOKEN(aux_sym_similarity_token1);
587- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(241);
588+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(242);
589 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(140);
590 END_STATE();
591 case 142:
592 ACCEPT_TOKEN(aux_sym_similarity_token1);
593- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(242);
594+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(243);
595 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(141);
596 END_STATE();
597 case 143:
598 ACCEPT_TOKEN(aux_sym_similarity_token1);
599- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(243);
600+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(244);
601 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(142);
602 END_STATE();
603 case 144:
604 ACCEPT_TOKEN(aux_sym_similarity_token1);
605- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(244);
606+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(245);
607 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(143);
608 END_STATE();
609 case 145:
610 ACCEPT_TOKEN(aux_sym_similarity_token1);
611- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(245);
612+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(246);
613 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(144);
614 END_STATE();
615 case 146:
616 ACCEPT_TOKEN(aux_sym_similarity_token1);
617- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(246);
618+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(247);
619 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(145);
620 END_STATE();
621 case 147:
622 ACCEPT_TOKEN(aux_sym_similarity_token1);
623- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(247);
624+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(248);
625 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
626 END_STATE();
627 case 148:
628 ACCEPT_TOKEN(aux_sym_similarity_token1);
629- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(248);
630+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(249);
631 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147);
632 END_STATE();
633 case 149:
634 ACCEPT_TOKEN(aux_sym_similarity_token1);
635- if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(249);
636+ if (('a' <= lookahead && lookahead <= 'f')) ADVANCE(250);
637 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(148);
638 END_STATE();
639 case 150:
640 @@ -1612,58 +1630,52 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
641 lookahead != '\r') ADVANCE(203);
642 END_STATE();
643 case 204:
644- ACCEPT_TOKEN(sym_linerange);
645- if (lookahead == ',') ADVANCE(75);
646- if (('0' <= lookahead && lookahead <= '9')) ADVANCE(204);
647+ ACCEPT_TOKEN(anon_sym_POUND);
648 END_STATE();
649 case 205:
650 ACCEPT_TOKEN(sym_linerange);
651+ if (lookahead == ',') ADVANCE(75);
652 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(205);
653 END_STATE();
654 case 206:
655- ACCEPT_TOKEN(aux_sym_filename_token1);
656- if (lookahead == 'a') ADVANCE(213);
657- if (lookahead == 11 ||
658- lookahead == '\f') ADVANCE(206);
659- if (lookahead != 0 &&
660- (lookahead < '\t' || '\r' < lookahead) &&
661- lookahead != ' ') ADVANCE(216);
662+ ACCEPT_TOKEN(sym_linerange);
663+ if (('0' <= lookahead && lookahead <= '9')) ADVANCE(206);
664 END_STATE();
665 case 207:
666 ACCEPT_TOKEN(aux_sym_filename_token1);
667- if (lookahead == 'd') ADVANCE(212);
668+ if (lookahead == 'a') ADVANCE(214);
669 if (lookahead == 11 ||
670 lookahead == '\f') ADVANCE(207);
671 if (lookahead != 0 &&
672 (lookahead < '\t' || '\r' < lookahead) &&
673- lookahead != ' ') ADVANCE(216);
674+ lookahead != ' ') ADVANCE(217);
675 END_STATE();
676 case 208:
677 ACCEPT_TOKEN(aux_sym_filename_token1);
678- if (lookahead == 'd') ADVANCE(104);
679+ if (lookahead == 'd') ADVANCE(213);
680+ if (lookahead == 11 ||
681+ lookahead == '\f') ADVANCE(208);
682 if (lookahead != 0 &&
683- lookahead != '\t' &&
684- lookahead != '\n' &&
685- lookahead != '\r' &&
686- lookahead != ' ') ADVANCE(216);
687+ (lookahead < '\t' || '\r' < lookahead) &&
688+ lookahead != ' ') ADVANCE(217);
689 END_STATE();
690 case 209:
691 ACCEPT_TOKEN(aux_sym_filename_token1);
692- if (lookahead == 'e') ADVANCE(214);
693+ if (lookahead == 'd') ADVANCE(104);
694 if (lookahead != 0 &&
695 lookahead != '\t' &&
696 lookahead != '\n' &&
697 lookahead != '\r' &&
698- lookahead != ' ') ADVANCE(216);
699+ lookahead != ' ') ADVANCE(217);
700 END_STATE();
701 case 210:
702 ACCEPT_TOKEN(aux_sym_filename_token1);
703- if (lookahead == 'f') ADVANCE(209);
704+ if (lookahead == 'e') ADVANCE(215);
705 if (lookahead != 0 &&
706 lookahead != '\t' &&
707 lookahead != '\n' &&
708 lookahead != '\r' &&
709- lookahead != ' ') ADVANCE(216);
710+ lookahead != ' ') ADVANCE(217);
711 END_STATE();
712 case 211:
713 ACCEPT_TOKEN(aux_sym_filename_token1);
714 @@ -1672,58 +1684,62 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
715 lookahead != '\t' &&
716 lookahead != '\n' &&
717 lookahead != '\r' &&
718- lookahead != ' ') ADVANCE(216);
719+ lookahead != ' ') ADVANCE(217);
720 END_STATE();
721 case 212:
722 ACCEPT_TOKEN(aux_sym_filename_token1);
723- if (lookahead == 'i') ADVANCE(211);
724+ if (lookahead == 'f') ADVANCE(211);
725 if (lookahead != 0 &&
726 lookahead != '\t' &&
727 lookahead != '\n' &&
728 lookahead != '\r' &&
729- lookahead != ' ') ADVANCE(216);
730+ lookahead != ' ') ADVANCE(217);
731 END_STATE();
732 case 213:
733 ACCEPT_TOKEN(aux_sym_filename_token1);
734- if (lookahead == 'n') ADVANCE(208);
735+ if (lookahead == 'i') ADVANCE(212);
736 if (lookahead != 0 &&
737 lookahead != '\t' &&
738 lookahead != '\n' &&
739 lookahead != '\r' &&
740- lookahead != ' ') ADVANCE(216);
741+ lookahead != ' ') ADVANCE(217);
742 END_STATE();
743 case 214:
744 ACCEPT_TOKEN(aux_sym_filename_token1);
745- if (lookahead == 'r') ADVANCE(106);
746+ if (lookahead == 'n') ADVANCE(209);
747 if (lookahead != 0 &&
748 lookahead != '\t' &&
749 lookahead != '\n' &&
750 lookahead != '\r' &&
751- lookahead != ' ') ADVANCE(216);
752+ lookahead != ' ') ADVANCE(217);
753 END_STATE();
754 case 215:
755 ACCEPT_TOKEN(aux_sym_filename_token1);
756+ if (lookahead == 'r') ADVANCE(106);
757+ if (lookahead != 0 &&
758+ lookahead != '\t' &&
759+ lookahead != '\n' &&
760+ lookahead != '\r' &&
761+ lookahead != ' ') ADVANCE(217);
762+ END_STATE();
763+ case 216:
764+ ACCEPT_TOKEN(aux_sym_filename_token1);
765 if (lookahead == 11 ||
766- lookahead == '\f') ADVANCE(215);
767+ lookahead == '\f') ADVANCE(216);
768 if (lookahead != 0 &&
769 (lookahead < '\t' || '\r' < lookahead) &&
770- lookahead != ' ') ADVANCE(216);
771+ lookahead != ' ') ADVANCE(217);
772 END_STATE();
773- case 216:
774+ case 217:
775 ACCEPT_TOKEN(aux_sym_filename_token1);
776 if (lookahead != 0 &&
777 lookahead != '\t' &&
778 lookahead != '\n' &&
779 lookahead != '\r' &&
780- lookahead != ' ') ADVANCE(216);
781- END_STATE();
782- case 217:
783- ACCEPT_TOKEN(sym_commit);
784+ lookahead != ' ') ADVANCE(217);
785 END_STATE();
786 case 218:
787 ACCEPT_TOKEN(sym_commit);
788- if (('0' <= lookahead && lookahead <= '9') ||
789- ('a' <= lookahead && lookahead <= 'f')) ADVANCE(217);
790 END_STATE();
791 case 219:
792 ACCEPT_TOKEN(sym_commit);
793 @@ -1885,6 +1901,11 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
794 if (('0' <= lookahead && lookahead <= '9') ||
795 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(249);
796 END_STATE();
797+ case 251:
798+ ACCEPT_TOKEN(sym_commit);
799+ if (('0' <= lookahead && lookahead <= '9') ||
800+ ('a' <= lookahead && lookahead <= 'f')) ADVANCE(250);
801+ END_STATE();
802 default:
803 return false;
804 }
805 @@ -1892,92 +1913,94 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
806
807 static const TSLexMode ts_lex_modes[STATE_COUNT] = {
808 [0] = {.lex_state = 0},
809- [1] = {.lex_state = 83},
810- [2] = {.lex_state = 83},
811- [3] = {.lex_state = 83},
812- [4] = {.lex_state = 83},
813- [5] = {.lex_state = 83},
814- [6] = {.lex_state = 83},
815- [7] = {.lex_state = 83},
816- [8] = {.lex_state = 83},
817- [9] = {.lex_state = 83},
818- [10] = {.lex_state = 83},
819- [11] = {.lex_state = 83},
820- [12] = {.lex_state = 83},
821- [13] = {.lex_state = 83},
822- [14] = {.lex_state = 83},
823- [15] = {.lex_state = 83},
824- [16] = {.lex_state = 83},
825- [17] = {.lex_state = 83},
826- [18] = {.lex_state = 83},
827+ [1] = {.lex_state = 82},
828+ [2] = {.lex_state = 82},
829+ [3] = {.lex_state = 82},
830+ [4] = {.lex_state = 82},
831+ [5] = {.lex_state = 82},
832+ [6] = {.lex_state = 82},
833+ [7] = {.lex_state = 82},
834+ [8] = {.lex_state = 82},
835+ [9] = {.lex_state = 82},
836+ [10] = {.lex_state = 82},
837+ [11] = {.lex_state = 82},
838+ [12] = {.lex_state = 82},
839+ [13] = {.lex_state = 82},
840+ [14] = {.lex_state = 82},
841+ [15] = {.lex_state = 82},
842+ [16] = {.lex_state = 82},
843+ [17] = {.lex_state = 82},
844+ [18] = {.lex_state = 82},
845 [19] = {.lex_state = 86},
846- [20] = {.lex_state = 86},
847- [21] = {.lex_state = 83},
848- [22] = {.lex_state = 83},
849+ [20] = {.lex_state = 82},
850+ [21] = {.lex_state = 82},
851+ [22] = {.lex_state = 86},
852 [23] = {.lex_state = 86},
853- [24] = {.lex_state = 86},
854- [25] = {.lex_state = 84},
855- [26] = {.lex_state = 87},
856+ [24] = {.lex_state = 84},
857+ [25] = {.lex_state = 86},
858+ [26] = {.lex_state = 86},
859 [27] = {.lex_state = 14},
860 [28] = {.lex_state = 86},
861- [29] = {.lex_state = 87},
862- [30] = {.lex_state = 86},
863+ [29] = {.lex_state = 86},
864+ [30] = {.lex_state = 87},
865 [31] = {.lex_state = 87},
866 [32] = {.lex_state = 86},
867- [33] = {.lex_state = 8},
868- [34] = {.lex_state = 86},
869+ [33] = {.lex_state = 87},
870+ [34] = {.lex_state = 87},
871 [35] = {.lex_state = 8},
872 [36] = {.lex_state = 86},
873- [37] = {.lex_state = 14},
874- [38] = {.lex_state = 86},
875- [39] = {.lex_state = 84},
876+ [37] = {.lex_state = 8},
877+ [38] = {.lex_state = 14},
878+ [39] = {.lex_state = 86},
879 [40] = {.lex_state = 0},
880- [41] = {.lex_state = 84},
881- [42] = {.lex_state = 0},
882+ [41] = {.lex_state = 0},
883+ [42] = {.lex_state = 84},
884 [43] = {.lex_state = 0},
885 [44] = {.lex_state = 0},
886- [45] = {.lex_state = 84},
887- [46] = {.lex_state = 0},
888+ [45] = {.lex_state = 0},
889+ [46] = {.lex_state = 84},
890 [47] = {.lex_state = 0},
891 [48] = {.lex_state = 0},
892 [49] = {.lex_state = 0},
893- [50] = {.lex_state = 0},
894+ [50] = {.lex_state = 84},
895 [51] = {.lex_state = 84},
896 [52] = {.lex_state = 0},
897 [53] = {.lex_state = 0},
898 [54] = {.lex_state = 0},
899 [55] = {.lex_state = 0},
900- [56] = {.lex_state = 84},
901+ [56] = {.lex_state = 0},
902 [57] = {.lex_state = 0},
903- [58] = {.lex_state = 0},
904- [59] = {.lex_state = 84},
905+ [58] = {.lex_state = 84},
906+ [59] = {.lex_state = 0},
907 [60] = {.lex_state = 0},
908 [61] = {.lex_state = 0},
909- [62] = {.lex_state = 84},
910- [63] = {.lex_state = 0},
911- [64] = {.lex_state = 0},
912+ [62] = {.lex_state = 0},
913+ [63] = {.lex_state = 84},
914+ [64] = {.lex_state = 84},
915 [65] = {.lex_state = 0},
916 [66] = {.lex_state = 0},
917 [67] = {.lex_state = 0},
918- [68] = {.lex_state = 84},
919+ [68] = {.lex_state = 0},
920 [69] = {.lex_state = 0},
921- [70] = {.lex_state = 0},
922+ [70] = {.lex_state = 84},
923 [71] = {.lex_state = 0},
924 [72] = {.lex_state = 0},
925 [73] = {.lex_state = 0},
926- [74] = {.lex_state = 73},
927+ [74] = {.lex_state = 0},
928 [75] = {.lex_state = 0},
929- [76] = {.lex_state = 0},
930- [77] = {.lex_state = 84},
931+ [76] = {.lex_state = 84},
932+ [77] = {.lex_state = 0},
933 [78] = {.lex_state = 0},
934- [79] = {.lex_state = 84},
935- [80] = {.lex_state = 84},
936- [81] = {.lex_state = 33},
937- [82] = {.lex_state = 33},
938- [83] = {.lex_state = 0},
939- [84] = {.lex_state = 0},
940- [85] = {.lex_state = 84},
941- [86] = {.lex_state = 33},
942+ [79] = {.lex_state = 73},
943+ [80] = {.lex_state = 0},
944+ [81] = {.lex_state = 84},
945+ [82] = {.lex_state = 84},
946+ [83] = {.lex_state = 33},
947+ [84] = {.lex_state = 33},
948+ [85] = {.lex_state = 0},
949+ [86] = {.lex_state = 0},
950+ [87] = {.lex_state = 84},
951+ [88] = {.lex_state = 33},
952 };
953
954 static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
955 @@ -2012,22 +2035,24 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
956 [anon_sym_DASH] = ACTIONS(1),
957 [anon_sym_DASH_DASH] = ACTIONS(1),
958 [anon_sym_DASH_DASH_DASH_DASH] = ACTIONS(1),
959+ [anon_sym_POUND] = ACTIONS(1),
960 [sym_commit] = ACTIONS(1),
961 },
962 [1] = {
963- [sym_source] = STATE(78),
964- [sym__line] = STATE(44),
965+ [sym_source] = STATE(80),
966+ [sym__line] = STATE(45),
967 [sym_block] = STATE(2),
968- [sym_command] = STATE(73),
969- [sym_file_change] = STATE(44),
970- [sym_binary_change] = STATE(44),
971- [sym_index] = STATE(44),
972- [sym_similarity] = STATE(44),
973- [sym_old_file] = STATE(44),
974- [sym_new_file] = STATE(44),
975- [sym_location] = STATE(44),
976- [sym_addition] = STATE(44),
977- [sym_deletion] = STATE(44),
978+ [sym_command] = STATE(75),
979+ [sym_file_change] = STATE(45),
980+ [sym_binary_change] = STATE(45),
981+ [sym_index] = STATE(45),
982+ [sym_similarity] = STATE(45),
983+ [sym_old_file] = STATE(45),
984+ [sym_new_file] = STATE(45),
985+ [sym_location] = STATE(45),
986+ [sym_addition] = STATE(45),
987+ [sym_deletion] = STATE(45),
988+ [sym_comment] = STATE(45),
989 [aux_sym_source_repeat1] = STATE(2),
990 [ts_builtin_sym_end] = ACTIONS(3),
991 [aux_sym_source_token1] = ACTIONS(5),
992 @@ -2049,11 +2074,12 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
993 [anon_sym_DASH_DASH] = ACTIONS(33),
994 [anon_sym_DASH_DASH_DASH_DASH] = ACTIONS(35),
995 [sym_context] = ACTIONS(37),
996+ [anon_sym_POUND] = ACTIONS(39),
997 },
998 [2] = {
999 [sym__line] = STATE(54),
1000 [sym_block] = STATE(3),
1001- [sym_command] = STATE(73),
1002+ [sym_command] = STATE(75),
1003 [sym_file_change] = STATE(54),
1004 [sym_binary_change] = STATE(54),
1005 [sym_index] = STATE(54),
1006 @@ -2063,9 +2089,10 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
1007 [sym_location] = STATE(54),
1008 [sym_addition] = STATE(54),
1009 [sym_deletion] = STATE(54),
1010+ [sym_comment] = STATE(54),
1011 [aux_sym_source_repeat1] = STATE(3),
1012- [ts_builtin_sym_end] = ACTIONS(39),
1013- [aux_sym_source_token1] = ACTIONS(41),
1014+ [ts_builtin_sym_end] = ACTIONS(41),
1015+ [aux_sym_source_token1] = ACTIONS(43),
1016 [anon_sym_diff] = ACTIONS(7),
1017 [anon_sym_new] = ACTIONS(9),
1018 [anon_sym_deleted] = ACTIONS(11),
1019 @@ -2083,42 +2110,45 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
1020 [anon_sym_DASH] = ACTIONS(33),
1021 [anon_sym_DASH_DASH] = ACTIONS(33),
1022 [anon_sym_DASH_DASH_DASH_DASH] = ACTIONS(35),
1023- [sym_context] = ACTIONS(43),
1024+ [sym_context] = ACTIONS(45),
1025+ [anon_sym_POUND] = ACTIONS(39),
1026 },
1027 [3] = {
1028- [sym__line] = STATE(65),
1029+ [sym__line] = STATE(67),
1030 [sym_block] = STATE(3),
1031- [sym_command] = STATE(73),
1032- [sym_file_change] = STATE(65),
1033- [sym_binary_change] = STATE(65),
1034- [sym_index] = STATE(65),
1035- [sym_similarity] = STATE(65),
1036- [sym_old_file] = STATE(65),
1037- [sym_new_file] = STATE(65),
1038- [sym_location] = STATE(65),
1039- [sym_addition] = STATE(65),
1040- [sym_deletion] = STATE(65),
1041+ [sym_command] = STATE(75),
1042+ [sym_file_change] = STATE(67),
1043+ [sym_binary_change] = STATE(67),
1044+ [sym_index] = STATE(67),
1045+ [sym_similarity] = STATE(67),
1046+ [sym_old_file] = STATE(67),
1047+ [sym_new_file] = STATE(67),
1048+ [sym_location] = STATE(67),
1049+ [sym_addition] = STATE(67),
1050+ [sym_deletion] = STATE(67),
1051+ [sym_comment] = STATE(67),
1052 [aux_sym_source_repeat1] = STATE(3),
1053- [ts_builtin_sym_end] = ACTIONS(45),
1054- [aux_sym_source_token1] = ACTIONS(47),
1055- [anon_sym_diff] = ACTIONS(50),
1056- [anon_sym_new] = ACTIONS(53),
1057- [anon_sym_deleted] = ACTIONS(56),
1058- [anon_sym_old] = ACTIONS(59),
1059- [anon_sym_rename] = ACTIONS(62),
1060- [anon_sym_Binary] = ACTIONS(65),
1061- [anon_sym_index] = ACTIONS(68),
1062- [anon_sym_similarity] = ACTIONS(71),
1063- [anon_sym_DASH_DASH_DASH] = ACTIONS(74),
1064- [anon_sym_PLUS_PLUS_PLUS] = ACTIONS(77),
1065- [anon_sym_AT_AT] = ACTIONS(80),
1066- [anon_sym_PLUS] = ACTIONS(83),
1067- [anon_sym_PLUS_PLUS] = ACTIONS(83),
1068- [anon_sym_PLUS_PLUS_PLUS_PLUS] = ACTIONS(86),
1069- [anon_sym_DASH] = ACTIONS(89),
1070- [anon_sym_DASH_DASH] = ACTIONS(89),
1071- [anon_sym_DASH_DASH_DASH_DASH] = ACTIONS(92),
1072- [sym_context] = ACTIONS(95),
1073+ [ts_builtin_sym_end] = ACTIONS(47),
1074+ [aux_sym_source_token1] = ACTIONS(49),
1075+ [anon_sym_diff] = ACTIONS(52),
1076+ [anon_sym_new] = ACTIONS(55),
1077+ [anon_sym_deleted] = ACTIONS(58),
1078+ [anon_sym_old] = ACTIONS(61),
1079+ [anon_sym_rename] = ACTIONS(64),
1080+ [anon_sym_Binary] = ACTIONS(67),
1081+ [anon_sym_index] = ACTIONS(70),
1082+ [anon_sym_similarity] = ACTIONS(73),
1083+ [anon_sym_DASH_DASH_DASH] = ACTIONS(76),
1084+ [anon_sym_PLUS_PLUS_PLUS] = ACTIONS(79),
1085+ [anon_sym_AT_AT] = ACTIONS(82),
1086+ [anon_sym_PLUS] = ACTIONS(85),
1087+ [anon_sym_PLUS_PLUS] = ACTIONS(85),
1088+ [anon_sym_PLUS_PLUS_PLUS_PLUS] = ACTIONS(88),
1089+ [anon_sym_DASH] = ACTIONS(91),
1090+ [anon_sym_DASH_DASH] = ACTIONS(91),
1091+ [anon_sym_DASH_DASH_DASH_DASH] = ACTIONS(94),
1092+ [sym_context] = ACTIONS(97),
1093+ [anon_sym_POUND] = ACTIONS(100),
1094 },
1095 };
1096
1097 @@ -2138,24 +2168,25 @@ static const uint16_t ts_small_parse_table[] = {
1098 anon_sym_index,
1099 ACTIONS(21), 1,
1100 anon_sym_similarity,
1101- ACTIONS(102), 1,
1102+ ACTIONS(107), 1,
1103 anon_sym_DASH_DASH_DASH,
1104 STATE(6), 1,
1105 aux_sym_block_repeat1,
1106- STATE(61), 1,
1107+ STATE(74), 1,
1108 sym_old_file,
1109- STATE(71), 4,
1110+ STATE(73), 4,
1111 sym_file_change,
1112 sym_binary_change,
1113 sym_index,
1114 sym_similarity,
1115- ACTIONS(98), 5,
1116+ ACTIONS(103), 6,
1117 ts_builtin_sym_end,
1118 anon_sym_diff,
1119 anon_sym_AT_AT,
1120 anon_sym_PLUS_PLUS_PLUS_PLUS,
1121 anon_sym_DASH_DASH_DASH_DASH,
1122- ACTIONS(100), 7,
1123+ anon_sym_POUND,
1124+ ACTIONS(105), 7,
1125 aux_sym_source_token1,
1126 anon_sym_PLUS_PLUS_PLUS,
1127 anon_sym_PLUS,
1128 @@ -2163,7 +2194,7 @@ static const uint16_t ts_small_parse_table[] = {
1129 anon_sym_DASH,
1130 anon_sym_DASH_DASH,
1131 sym_context,
1132- [53] = 13,
1133+ [54] = 13,
1134 ACTIONS(9), 1,
1135 anon_sym_new,
1136 ACTIONS(11), 1,
1137 @@ -2178,24 +2209,25 @@ static const uint16_t ts_small_parse_table[] = {
1138 anon_sym_index,
1139 ACTIONS(21), 1,
1140 anon_sym_similarity,
1141- ACTIONS(102), 1,
1142+ ACTIONS(107), 1,
1143 anon_sym_DASH_DASH_DASH,
1144 STATE(4), 1,
1145 aux_sym_block_repeat1,
1146- STATE(66), 1,
1147+ STATE(68), 1,
1148 sym_old_file,
1149- STATE(71), 4,
1150+ STATE(73), 4,
1151 sym_file_change,
1152 sym_binary_change,
1153 sym_index,
1154 sym_similarity,
1155- ACTIONS(104), 5,
1156+ ACTIONS(109), 6,
1157 ts_builtin_sym_end,
1158 anon_sym_diff,
1159 anon_sym_AT_AT,
1160 anon_sym_PLUS_PLUS_PLUS_PLUS,
1161 anon_sym_DASH_DASH_DASH_DASH,
1162- ACTIONS(106), 7,
1163+ anon_sym_POUND,
1164+ ACTIONS(111), 7,
1165 aux_sym_source_token1,
1166 anon_sym_PLUS_PLUS_PLUS,
1167 anon_sym_PLUS,
1168 @@ -2203,35 +2235,36 @@ static const uint16_t ts_small_parse_table[] = {
1169 anon_sym_DASH,
1170 anon_sym_DASH_DASH,
1171 sym_context,
1172- [106] = 11,
1173- ACTIONS(112), 1,
1174+ [108] = 11,
1175+ ACTIONS(117), 1,
1176 anon_sym_new,
1177- ACTIONS(115), 1,
1178+ ACTIONS(120), 1,
1179 anon_sym_deleted,
1180- ACTIONS(118), 1,
1181+ ACTIONS(123), 1,
1182 anon_sym_old,
1183- ACTIONS(121), 1,
1184+ ACTIONS(126), 1,
1185 anon_sym_rename,
1186- ACTIONS(124), 1,
1187+ ACTIONS(129), 1,
1188 anon_sym_Binary,
1189- ACTIONS(127), 1,
1190+ ACTIONS(132), 1,
1191 anon_sym_index,
1192- ACTIONS(130), 1,
1193+ ACTIONS(135), 1,
1194 anon_sym_similarity,
1195 STATE(6), 1,
1196 aux_sym_block_repeat1,
1197- STATE(71), 4,
1198+ STATE(73), 4,
1199 sym_file_change,
1200 sym_binary_change,
1201 sym_index,
1202 sym_similarity,
1203- ACTIONS(108), 5,
1204+ ACTIONS(113), 6,
1205 ts_builtin_sym_end,
1206 anon_sym_diff,
1207 anon_sym_AT_AT,
1208 anon_sym_PLUS_PLUS_PLUS_PLUS,
1209 anon_sym_DASH_DASH_DASH_DASH,
1210- ACTIONS(110), 8,
1211+ anon_sym_POUND,
1212+ ACTIONS(115), 8,
1213 aux_sym_source_token1,
1214 anon_sym_DASH_DASH_DASH,
1215 anon_sym_PLUS_PLUS_PLUS,
1216 @@ -2240,20 +2273,20 @@ static const uint16_t ts_small_parse_table[] = {
1217 anon_sym_DASH,
1218 anon_sym_DASH_DASH,
1219 sym_context,
1220- [154] = 12,
1221+ [157] = 12,
1222 ACTIONS(31), 1,
1223 anon_sym_PLUS_PLUS_PLUS_PLUS,
1224 ACTIONS(35), 1,
1225 anon_sym_DASH_DASH_DASH_DASH,
1226- ACTIONS(137), 1,
1227+ ACTIONS(142), 1,
1228 anon_sym_DASH_DASH_DASH,
1229- ACTIONS(139), 1,
1230+ ACTIONS(144), 1,
1231 anon_sym_PLUS_PLUS_PLUS,
1232- ACTIONS(141), 1,
1233+ ACTIONS(146), 1,
1234 sym_context,
1235- STATE(8), 1,
1236+ STATE(9), 1,
1237 aux_sym_changes_repeat2,
1238- STATE(14), 1,
1239+ STATE(16), 1,
1240 sym_changes,
1241 ACTIONS(29), 2,
1242 anon_sym_PLUS,
1243 @@ -2261,101 +2294,104 @@ static const uint16_t ts_small_parse_table[] = {
1244 ACTIONS(33), 2,
1245 anon_sym_DASH,
1246 anon_sym_DASH_DASH,
1247- STATE(43), 2,
1248+ STATE(44), 2,
1249 sym_addition,
1250 sym_deletion,
1251- ACTIONS(135), 5,
1252+ ACTIONS(140), 5,
1253 aux_sym_source_token1,
1254 anon_sym_new,
1255 anon_sym_deleted,
1256 anon_sym_old,
1257 anon_sym_rename,
1258- ACTIONS(133), 6,
1259+ ACTIONS(138), 7,
1260 ts_builtin_sym_end,
1261 anon_sym_diff,
1262 anon_sym_Binary,
1263 anon_sym_index,
1264 anon_sym_similarity,
1265 anon_sym_AT_AT,
1266- [203] = 11,
1267- ACTIONS(31), 1,
1268- anon_sym_PLUS_PLUS_PLUS_PLUS,
1269- ACTIONS(35), 1,
1270- anon_sym_DASH_DASH_DASH_DASH,
1271- ACTIONS(137), 1,
1272+ anon_sym_POUND,
1273+ [207] = 11,
1274+ ACTIONS(152), 1,
1275 anon_sym_DASH_DASH_DASH,
1276- ACTIONS(139), 1,
1277+ ACTIONS(155), 1,
1278 anon_sym_PLUS_PLUS_PLUS,
1279- ACTIONS(141), 1,
1280+ ACTIONS(161), 1,
1281+ anon_sym_PLUS_PLUS_PLUS_PLUS,
1282+ ACTIONS(167), 1,
1283+ anon_sym_DASH_DASH_DASH_DASH,
1284+ ACTIONS(170), 1,
1285 sym_context,
1286- STATE(9), 1,
1287+ STATE(8), 1,
1288 aux_sym_changes_repeat2,
1289- ACTIONS(29), 2,
1290+ ACTIONS(158), 2,
1291 anon_sym_PLUS,
1292 anon_sym_PLUS_PLUS,
1293- ACTIONS(33), 2,
1294+ ACTIONS(164), 2,
1295 anon_sym_DASH,
1296 anon_sym_DASH_DASH,
1297- STATE(43), 2,
1298+ STATE(44), 2,
1299 sym_addition,
1300 sym_deletion,
1301- ACTIONS(145), 5,
1302+ ACTIONS(150), 5,
1303 aux_sym_source_token1,
1304 anon_sym_new,
1305 anon_sym_deleted,
1306 anon_sym_old,
1307 anon_sym_rename,
1308- ACTIONS(143), 6,
1309+ ACTIONS(148), 7,
1310 ts_builtin_sym_end,
1311 anon_sym_diff,
1312 anon_sym_Binary,
1313 anon_sym_index,
1314 anon_sym_similarity,
1315 anon_sym_AT_AT,
1316- [249] = 11,
1317- ACTIONS(151), 1,
1318- anon_sym_DASH_DASH_DASH,
1319- ACTIONS(154), 1,
1320- anon_sym_PLUS_PLUS_PLUS,
1321- ACTIONS(160), 1,
1322+ anon_sym_POUND,
1323+ [254] = 11,
1324+ ACTIONS(31), 1,
1325 anon_sym_PLUS_PLUS_PLUS_PLUS,
1326- ACTIONS(166), 1,
1327+ ACTIONS(35), 1,
1328 anon_sym_DASH_DASH_DASH_DASH,
1329- ACTIONS(169), 1,
1330+ ACTIONS(142), 1,
1331+ anon_sym_DASH_DASH_DASH,
1332+ ACTIONS(144), 1,
1333+ anon_sym_PLUS_PLUS_PLUS,
1334+ ACTIONS(146), 1,
1335 sym_context,
1336- STATE(9), 1,
1337+ STATE(8), 1,
1338 aux_sym_changes_repeat2,
1339- ACTIONS(157), 2,
1340+ ACTIONS(29), 2,
1341 anon_sym_PLUS,
1342 anon_sym_PLUS_PLUS,
1343- ACTIONS(163), 2,
1344+ ACTIONS(33), 2,
1345 anon_sym_DASH,
1346 anon_sym_DASH_DASH,
1347- STATE(43), 2,
1348+ STATE(44), 2,
1349 sym_addition,
1350 sym_deletion,
1351- ACTIONS(149), 5,
1352+ ACTIONS(175), 5,
1353 aux_sym_source_token1,
1354 anon_sym_new,
1355 anon_sym_deleted,
1356 anon_sym_old,
1357 anon_sym_rename,
1358- ACTIONS(147), 6,
1359+ ACTIONS(173), 7,
1360 ts_builtin_sym_end,
1361 anon_sym_diff,
1362 anon_sym_Binary,
1363 anon_sym_index,
1364 anon_sym_similarity,
1365 anon_sym_AT_AT,
1366- [295] = 5,
1367- ACTIONS(176), 1,
1368+ anon_sym_POUND,
1369+ [301] = 5,
1370+ ACTIONS(27), 1,
1371 anon_sym_AT_AT,
1372- STATE(69), 1,
1373+ STATE(71), 1,
1374 sym_location,
1375- STATE(10), 2,
1376+ STATE(11), 2,
1377 sym_hunk,
1378 aux_sym_hunks_repeat1,
1379- ACTIONS(172), 7,
1380+ ACTIONS(177), 8,
1381 ts_builtin_sym_end,
1382 anon_sym_diff,
1383 anon_sym_Binary,
1384 @@ -2363,7 +2399,8 @@ static const uint16_t ts_small_parse_table[] = {
1385 anon_sym_similarity,
1386 anon_sym_PLUS_PLUS_PLUS_PLUS,
1387 anon_sym_DASH_DASH_DASH_DASH,
1388- ACTIONS(174), 12,
1389+ anon_sym_POUND,
1390+ ACTIONS(179), 12,
1391 aux_sym_source_token1,
1392 anon_sym_new,
1393 anon_sym_deleted,
1394 @@ -2376,15 +2413,15 @@ static const uint16_t ts_small_parse_table[] = {
1395 anon_sym_DASH,
1396 anon_sym_DASH_DASH,
1397 sym_context,
1398- [329] = 5,
1399- ACTIONS(27), 1,
1400+ [336] = 5,
1401+ ACTIONS(185), 1,
1402 anon_sym_AT_AT,
1403- STATE(69), 1,
1404+ STATE(71), 1,
1405 sym_location,
1406- STATE(10), 2,
1407+ STATE(11), 2,
1408 sym_hunk,
1409 aux_sym_hunks_repeat1,
1410- ACTIONS(179), 7,
1411+ ACTIONS(181), 8,
1412 ts_builtin_sym_end,
1413 anon_sym_diff,
1414 anon_sym_Binary,
1415 @@ -2392,7 +2429,8 @@ static const uint16_t ts_small_parse_table[] = {
1416 anon_sym_similarity,
1417 anon_sym_PLUS_PLUS_PLUS_PLUS,
1418 anon_sym_DASH_DASH_DASH_DASH,
1419- ACTIONS(181), 12,
1420+ anon_sym_POUND,
1421+ ACTIONS(183), 12,
1422 aux_sym_source_token1,
1423 anon_sym_new,
1424 anon_sym_deleted,
1425 @@ -2405,12 +2443,12 @@ static const uint16_t ts_small_parse_table[] = {
1426 anon_sym_DASH,
1427 anon_sym_DASH_DASH,
1428 sym_context,
1429- [363] = 4,
1430- ACTIONS(183), 1,
1431+ [371] = 4,
1432+ ACTIONS(190), 1,
1433 aux_sym_source_token1,
1434- STATE(13), 1,
1435+ STATE(12), 1,
1436 aux_sym_changes_repeat1,
1437- ACTIONS(147), 8,
1438+ ACTIONS(188), 9,
1439 ts_builtin_sym_end,
1440 anon_sym_diff,
1441 anon_sym_Binary,
1442 @@ -2419,7 +2457,8 @@ static const uint16_t ts_small_parse_table[] = {
1443 anon_sym_AT_AT,
1444 anon_sym_PLUS_PLUS_PLUS_PLUS,
1445 anon_sym_DASH_DASH_DASH_DASH,
1446- ACTIONS(149), 11,
1447+ anon_sym_POUND,
1448+ ACTIONS(193), 11,
1449 anon_sym_new,
1450 anon_sym_deleted,
1451 anon_sym_old,
1452 @@ -2431,12 +2470,12 @@ static const uint16_t ts_small_parse_table[] = {
1453 anon_sym_DASH,
1454 anon_sym_DASH_DASH,
1455 sym_context,
1456- [393] = 4,
1457- ACTIONS(187), 1,
1458+ [402] = 4,
1459+ ACTIONS(195), 1,
1460 aux_sym_source_token1,
1461- STATE(13), 1,
1462+ STATE(12), 1,
1463 aux_sym_changes_repeat1,
1464- ACTIONS(185), 8,
1465+ ACTIONS(148), 9,
1466 ts_builtin_sym_end,
1467 anon_sym_diff,
1468 anon_sym_Binary,
1469 @@ -2445,7 +2484,8 @@ static const uint16_t ts_small_parse_table[] = {
1470 anon_sym_AT_AT,
1471 anon_sym_PLUS_PLUS_PLUS_PLUS,
1472 anon_sym_DASH_DASH_DASH_DASH,
1473- ACTIONS(190), 11,
1474+ anon_sym_POUND,
1475+ ACTIONS(150), 11,
1476 anon_sym_new,
1477 anon_sym_deleted,
1478 anon_sym_old,
1479 @@ -2457,8 +2497,8 @@ static const uint16_t ts_small_parse_table[] = {
1480 anon_sym_DASH,
1481 anon_sym_DASH_DASH,
1482 sym_context,
1483- [423] = 2,
1484- ACTIONS(192), 8,
1485+ [433] = 2,
1486+ ACTIONS(47), 9,
1487 ts_builtin_sym_end,
1488 anon_sym_diff,
1489 anon_sym_Binary,
1490 @@ -2467,7 +2507,8 @@ static const uint16_t ts_small_parse_table[] = {
1491 anon_sym_AT_AT,
1492 anon_sym_PLUS_PLUS_PLUS_PLUS,
1493 anon_sym_DASH_DASH_DASH_DASH,
1494- ACTIONS(194), 12,
1495+ anon_sym_POUND,
1496+ ACTIONS(197), 12,
1497 aux_sym_source_token1,
1498 anon_sym_new,
1499 anon_sym_deleted,
1500 @@ -2480,8 +2521,8 @@ static const uint16_t ts_small_parse_table[] = {
1501 anon_sym_DASH,
1502 anon_sym_DASH_DASH,
1503 sym_context,
1504- [448] = 2,
1505- ACTIONS(196), 8,
1506+ [459] = 2,
1507+ ACTIONS(113), 9,
1508 ts_builtin_sym_end,
1509 anon_sym_diff,
1510 anon_sym_Binary,
1511 @@ -2490,7 +2531,8 @@ static const uint16_t ts_small_parse_table[] = {
1512 anon_sym_AT_AT,
1513 anon_sym_PLUS_PLUS_PLUS_PLUS,
1514 anon_sym_DASH_DASH_DASH_DASH,
1515- ACTIONS(198), 12,
1516+ anon_sym_POUND,
1517+ ACTIONS(115), 12,
1518 aux_sym_source_token1,
1519 anon_sym_new,
1520 anon_sym_deleted,
1521 @@ -2503,8 +2545,8 @@ static const uint16_t ts_small_parse_table[] = {
1522 anon_sym_DASH,
1523 anon_sym_DASH_DASH,
1524 sym_context,
1525- [473] = 2,
1526- ACTIONS(45), 8,
1527+ [485] = 2,
1528+ ACTIONS(199), 9,
1529 ts_builtin_sym_end,
1530 anon_sym_diff,
1531 anon_sym_Binary,
1532 @@ -2513,7 +2555,8 @@ static const uint16_t ts_small_parse_table[] = {
1533 anon_sym_AT_AT,
1534 anon_sym_PLUS_PLUS_PLUS_PLUS,
1535 anon_sym_DASH_DASH_DASH_DASH,
1536- ACTIONS(200), 12,
1537+ anon_sym_POUND,
1538+ ACTIONS(201), 12,
1539 aux_sym_source_token1,
1540 anon_sym_new,
1541 anon_sym_deleted,
1542 @@ -2526,8 +2569,8 @@ static const uint16_t ts_small_parse_table[] = {
1543 anon_sym_DASH,
1544 anon_sym_DASH_DASH,
1545 sym_context,
1546- [498] = 2,
1547- ACTIONS(108), 8,
1548+ [511] = 2,
1549+ ACTIONS(203), 9,
1550 ts_builtin_sym_end,
1551 anon_sym_diff,
1552 anon_sym_Binary,
1553 @@ -2536,7 +2579,8 @@ static const uint16_t ts_small_parse_table[] = {
1554 anon_sym_AT_AT,
1555 anon_sym_PLUS_PLUS_PLUS_PLUS,
1556 anon_sym_DASH_DASH_DASH_DASH,
1557- ACTIONS(110), 12,
1558+ anon_sym_POUND,
1559+ ACTIONS(205), 12,
1560 aux_sym_source_token1,
1561 anon_sym_new,
1562 anon_sym_deleted,
1563 @@ -2549,8 +2593,8 @@ static const uint16_t ts_small_parse_table[] = {
1564 anon_sym_DASH,
1565 anon_sym_DASH_DASH,
1566 sym_context,
1567- [523] = 2,
1568- ACTIONS(202), 8,
1569+ [537] = 2,
1570+ ACTIONS(207), 9,
1571 ts_builtin_sym_end,
1572 anon_sym_diff,
1573 anon_sym_Binary,
1574 @@ -2559,7 +2603,8 @@ static const uint16_t ts_small_parse_table[] = {
1575 anon_sym_AT_AT,
1576 anon_sym_PLUS_PLUS_PLUS_PLUS,
1577 anon_sym_DASH_DASH_DASH_DASH,
1578- ACTIONS(204), 12,
1579+ anon_sym_POUND,
1580+ ACTIONS(209), 12,
1581 aux_sym_source_token1,
1582 anon_sym_new,
1583 anon_sym_deleted,
1584 @@ -2572,423 +2617,436 @@ static const uint16_t ts_small_parse_table[] = {
1585 anon_sym_DASH,
1586 anon_sym_DASH_DASH,
1587 sym_context,
1588- [548] = 5,
1589- ACTIONS(206), 1,
1590+ [563] = 5,
1591+ ACTIONS(211), 1,
1592 ts_builtin_sym_end,
1593- ACTIONS(208), 1,
1594+ ACTIONS(213), 1,
1595 aux_sym_source_token1,
1596- ACTIONS(210), 1,
1597+ ACTIONS(215), 1,
1598 aux_sym_filename_token1,
1599 STATE(23), 1,
1600 aux_sym_filename_repeat1,
1601- STATE(46), 1,
1602+ STATE(48), 1,
1603 sym_filename,
1604- [564] = 5,
1605- ACTIONS(210), 1,
1606- aux_sym_filename_token1,
1607- ACTIONS(212), 1,
1608- ts_builtin_sym_end,
1609- ACTIONS(214), 1,
1610- aux_sym_source_token1,
1611- STATE(23), 1,
1612- aux_sym_filename_repeat1,
1613- STATE(49), 1,
1614- sym_filename,
1615- [580] = 4,
1616+ [579] = 4,
1617 ACTIONS(27), 1,
1618 anon_sym_AT_AT,
1619- STATE(15), 1,
1620+ STATE(18), 1,
1621 sym_hunks,
1622- STATE(69), 1,
1623+ STATE(71), 1,
1624 sym_location,
1625- STATE(11), 2,
1626+ STATE(10), 2,
1627 sym_hunk,
1628 aux_sym_hunks_repeat1,
1629- [594] = 4,
1630+ [593] = 4,
1631 ACTIONS(27), 1,
1632 anon_sym_AT_AT,
1633- STATE(18), 1,
1634+ STATE(17), 1,
1635 sym_hunks,
1636- STATE(69), 1,
1637+ STATE(71), 1,
1638 sym_location,
1639- STATE(11), 2,
1640+ STATE(10), 2,
1641 sym_hunk,
1642 aux_sym_hunks_repeat1,
1643- [608] = 4,
1644- ACTIONS(216), 1,
1645+ [607] = 5,
1646+ ACTIONS(215), 1,
1647+ aux_sym_filename_token1,
1648+ ACTIONS(217), 1,
1649 ts_builtin_sym_end,
1650- ACTIONS(218), 1,
1651+ ACTIONS(219), 1,
1652 aux_sym_source_token1,
1653- ACTIONS(220), 1,
1654- aux_sym_filename_token1,
1655- STATE(24), 1,
1656+ STATE(23), 1,
1657 aux_sym_filename_repeat1,
1658- [621] = 4,
1659- ACTIONS(222), 1,
1660+ STATE(49), 1,
1661+ sym_filename,
1662+ [623] = 4,
1663+ ACTIONS(221), 1,
1664 ts_builtin_sym_end,
1665- ACTIONS(224), 1,
1666+ ACTIONS(223), 1,
1667 aux_sym_source_token1,
1668- ACTIONS(226), 1,
1669+ ACTIONS(225), 1,
1670 aux_sym_filename_token1,
1671- STATE(24), 1,
1672+ STATE(25), 1,
1673 aux_sym_filename_repeat1,
1674- [634] = 3,
1675- ACTIONS(231), 1,
1676+ [636] = 3,
1677+ ACTIONS(229), 1,
1678 aux_sym_similarity_token1,
1679- STATE(52), 1,
1680+ STATE(59), 1,
1681 sym_mode,
1682- ACTIONS(229), 2,
1683+ ACTIONS(227), 2,
1684 ts_builtin_sym_end,
1685 aux_sym_source_token1,
1686- [645] = 3,
1687- ACTIONS(206), 1,
1688+ [647] = 4,
1689+ ACTIONS(231), 1,
1690 ts_builtin_sym_end,
1691- ACTIONS(208), 1,
1692+ ACTIONS(233), 1,
1693 aux_sym_source_token1,
1694+ ACTIONS(235), 1,
1695+ aux_sym_filename_token1,
1696+ STATE(25), 1,
1697+ aux_sym_filename_repeat1,
1698+ [660] = 3,
1699+ ACTIONS(215), 1,
1700+ aux_sym_filename_token1,
1701+ STATE(23), 1,
1702+ aux_sym_filename_repeat1,
1703+ STATE(66), 1,
1704+ sym_filename,
1705+ [670] = 3,
1706 ACTIONS(233), 1,
1707- aux_sym_location_token1,
1708- [655] = 3,
1709- ACTIONS(224), 1,
1710 anon_sym_differ,
1711- ACTIONS(235), 1,
1712+ ACTIONS(238), 1,
1713 aux_sym_filename_token1,
1714 STATE(27), 1,
1715 aux_sym_filename_repeat1,
1716- [665] = 3,
1717- ACTIONS(210), 1,
1718+ [680] = 3,
1719+ ACTIONS(215), 1,
1720 aux_sym_filename_token1,
1721 STATE(23), 1,
1722 aux_sym_filename_repeat1,
1723- STATE(49), 1,
1724+ STATE(53), 1,
1725 sym_filename,
1726- [675] = 3,
1727- ACTIONS(212), 1,
1728- ts_builtin_sym_end,
1729- ACTIONS(214), 1,
1730- aux_sym_source_token1,
1731- ACTIONS(238), 1,
1732- aux_sym_location_token1,
1733- [685] = 3,
1734- ACTIONS(240), 1,
1735+ [690] = 3,
1736+ ACTIONS(241), 1,
1737 aux_sym_filename_token1,
1738- STATE(33), 1,
1739+ STATE(35), 1,
1740 aux_sym_filename_repeat1,
1741- STATE(64), 1,
1742+ STATE(65), 1,
1743 sym_filename,
1744- [695] = 3,
1745- ACTIONS(242), 1,
1746+ [700] = 3,
1747+ ACTIONS(243), 1,
1748 ts_builtin_sym_end,
1749- ACTIONS(244), 1,
1750+ ACTIONS(245), 1,
1751 aux_sym_source_token1,
1752- ACTIONS(246), 1,
1753+ ACTIONS(247), 1,
1754 aux_sym_location_token1,
1755- [705] = 3,
1756- ACTIONS(210), 1,
1757+ [710] = 3,
1758+ ACTIONS(211), 1,
1759+ ts_builtin_sym_end,
1760+ ACTIONS(213), 1,
1761+ aux_sym_source_token1,
1762+ ACTIONS(249), 1,
1763+ aux_sym_location_token1,
1764+ [720] = 3,
1765+ ACTIONS(215), 1,
1766 aux_sym_filename_token1,
1767 STATE(23), 1,
1768 aux_sym_filename_repeat1,
1769- STATE(40), 1,
1770+ STATE(49), 1,
1771 sym_filename,
1772- [715] = 3,
1773- ACTIONS(218), 1,
1774+ [730] = 3,
1775+ ACTIONS(217), 1,
1776+ ts_builtin_sym_end,
1777+ ACTIONS(219), 1,
1778+ aux_sym_source_token1,
1779+ ACTIONS(251), 1,
1780+ aux_sym_location_token1,
1781+ [740] = 3,
1782+ ACTIONS(253), 1,
1783+ ts_builtin_sym_end,
1784+ ACTIONS(255), 1,
1785+ aux_sym_source_token1,
1786+ ACTIONS(257), 1,
1787+ aux_sym_location_token1,
1788+ [750] = 3,
1789+ ACTIONS(223), 1,
1790 anon_sym_and,
1791- ACTIONS(248), 1,
1792+ ACTIONS(259), 1,
1793 aux_sym_filename_token1,
1794- STATE(35), 1,
1795+ STATE(37), 1,
1796 aux_sym_filename_repeat1,
1797- [725] = 3,
1798- ACTIONS(210), 1,
1799+ [760] = 3,
1800+ ACTIONS(261), 1,
1801 aux_sym_filename_token1,
1802- STATE(23), 1,
1803+ STATE(38), 1,
1804 aux_sym_filename_repeat1,
1805- STATE(72), 1,
1806+ STATE(63), 1,
1807 sym_filename,
1808- [735] = 3,
1809- ACTIONS(224), 1,
1810+ [770] = 3,
1811+ ACTIONS(233), 1,
1812 anon_sym_and,
1813- ACTIONS(250), 1,
1814- aux_sym_filename_token1,
1815- STATE(35), 1,
1816- aux_sym_filename_repeat1,
1817- [745] = 3,
1818- ACTIONS(253), 1,
1819+ ACTIONS(263), 1,
1820 aux_sym_filename_token1,
1821 STATE(37), 1,
1822 aux_sym_filename_repeat1,
1823- STATE(62), 1,
1824- sym_filename,
1825- [755] = 3,
1826- ACTIONS(218), 1,
1827+ [780] = 3,
1828+ ACTIONS(223), 1,
1829 anon_sym_differ,
1830- ACTIONS(255), 1,
1831+ ACTIONS(266), 1,
1832 aux_sym_filename_token1,
1833 STATE(27), 1,
1834 aux_sym_filename_repeat1,
1835- [765] = 3,
1836- ACTIONS(210), 1,
1837+ [790] = 3,
1838+ ACTIONS(215), 1,
1839 aux_sym_filename_token1,
1840 STATE(23), 1,
1841 aux_sym_filename_repeat1,
1842- STATE(46), 1,
1843+ STATE(48), 1,
1844 sym_filename,
1845- [775] = 2,
1846- ACTIONS(257), 1,
1847- anon_sym_PLUS_PLUS_PLUS,
1848- STATE(67), 1,
1849- sym_new_file,
1850- [782] = 1,
1851- ACTIONS(259), 2,
1852+ [800] = 1,
1853+ ACTIONS(268), 2,
1854 ts_builtin_sym_end,
1855 aux_sym_source_token1,
1856- [787] = 2,
1857- ACTIONS(261), 1,
1858+ [805] = 1,
1859+ ACTIONS(270), 2,
1860+ ts_builtin_sym_end,
1861+ aux_sym_source_token1,
1862+ [810] = 2,
1863+ ACTIONS(272), 1,
1864 anon_sym_file,
1865- ACTIONS(263), 1,
1866+ ACTIONS(274), 1,
1867 anon_sym_mode,
1868- [794] = 1,
1869- ACTIONS(265), 2,
1870+ [817] = 1,
1871+ ACTIONS(276), 2,
1872 anon_sym_from,
1873 anon_sym_to,
1874- [799] = 2,
1875- ACTIONS(267), 1,
1876+ [822] = 2,
1877+ ACTIONS(278), 1,
1878 aux_sym_source_token1,
1879- STATE(12), 1,
1880+ STATE(13), 1,
1881 aux_sym_changes_repeat1,
1882- [806] = 2,
1883- ACTIONS(39), 1,
1884+ [829] = 2,
1885+ ACTIONS(41), 1,
1886 ts_builtin_sym_end,
1887- ACTIONS(269), 1,
1888+ ACTIONS(280), 1,
1889 aux_sym_source_token1,
1890- [813] = 2,
1891- ACTIONS(231), 1,
1892+ [836] = 2,
1893+ ACTIONS(229), 1,
1894 aux_sym_similarity_token1,
1895- STATE(40), 1,
1896+ STATE(53), 1,
1897 sym_mode,
1898- [820] = 1,
1899- ACTIONS(271), 2,
1900+ [843] = 1,
1901+ ACTIONS(282), 2,
1902 ts_builtin_sym_end,
1903 aux_sym_source_token1,
1904- [825] = 1,
1905- ACTIONS(273), 2,
1906+ [848] = 1,
1907+ ACTIONS(284), 2,
1908 ts_builtin_sym_end,
1909 aux_sym_source_token1,
1910- [830] = 1,
1911- ACTIONS(275), 2,
1912+ [853] = 1,
1913+ ACTIONS(286), 2,
1914 ts_builtin_sym_end,
1915 aux_sym_source_token1,
1916- [835] = 1,
1917- ACTIONS(277), 2,
1918- ts_builtin_sym_end,
1919- aux_sym_source_token1,
1920- [840] = 1,
1921- ACTIONS(279), 2,
1922- ts_builtin_sym_end,
1923- aux_sym_source_token1,
1924- [845] = 2,
1925- ACTIONS(231), 1,
1926+ [858] = 2,
1927+ ACTIONS(229), 1,
1928 aux_sym_similarity_token1,
1929- STATE(50), 1,
1930+ STATE(52), 1,
1931 sym_mode,
1932- [852] = 1,
1933- ACTIONS(281), 2,
1934+ [865] = 2,
1935+ ACTIONS(288), 1,
1936+ anon_sym_PLUS_PLUS_PLUS,
1937+ STATE(69), 1,
1938+ sym_new_file,
1939+ [872] = 1,
1940+ ACTIONS(290), 2,
1941 ts_builtin_sym_end,
1942 aux_sym_source_token1,
1943- [857] = 1,
1944- ACTIONS(283), 2,
1945+ [877] = 1,
1946+ ACTIONS(292), 2,
1947 ts_builtin_sym_end,
1948 aux_sym_source_token1,
1949- [862] = 2,
1950- ACTIONS(269), 1,
1951+ [882] = 2,
1952+ ACTIONS(280), 1,
1953 aux_sym_source_token1,
1954- ACTIONS(285), 1,
1955+ ACTIONS(294), 1,
1956 ts_builtin_sym_end,
1957- [869] = 1,
1958- ACTIONS(287), 2,
1959+ [889] = 1,
1960+ ACTIONS(296), 2,
1961 ts_builtin_sym_end,
1962 aux_sym_source_token1,
1963- [874] = 2,
1964- ACTIONS(257), 1,
1965+ [894] = 1,
1966+ ACTIONS(298), 2,
1967+ ts_builtin_sym_end,
1968+ aux_sym_source_token1,
1969+ [899] = 1,
1970+ ACTIONS(300), 2,
1971+ ts_builtin_sym_end,
1972+ aux_sym_source_token1,
1973+ [904] = 2,
1974+ ACTIONS(288), 1,
1975 anon_sym_PLUS_PLUS_PLUS,
1976- STATE(63), 1,
1977+ STATE(61), 1,
1978 sym_new_file,
1979- [881] = 1,
1980- ACTIONS(289), 2,
1981+ [911] = 1,
1982+ ACTIONS(302), 2,
1983 ts_builtin_sym_end,
1984 aux_sym_source_token1,
1985- [886] = 1,
1986- ACTIONS(291), 2,
1987+ [916] = 1,
1988+ ACTIONS(304), 2,
1989 ts_builtin_sym_end,
1990 aux_sym_source_token1,
1991- [891] = 1,
1992- ACTIONS(293), 1,
1993- sym_linerange,
1994- [895] = 1,
1995- ACTIONS(295), 1,
1996- anon_sym_mode,
1997- [899] = 1,
1998- ACTIONS(297), 1,
1999+ [921] = 1,
2000+ ACTIONS(306), 1,
2001 aux_sym_source_token1,
2002- [903] = 1,
2003- ACTIONS(299), 1,
2004+ [925] = 1,
2005+ ACTIONS(308), 1,
2006+ anon_sym_mode,
2007+ [929] = 1,
2008+ ACTIONS(310), 1,
2009 anon_sym_differ,
2010- [907] = 1,
2011- ACTIONS(301), 1,
2012- aux_sym_source_token1,
2013- [911] = 1,
2014- ACTIONS(303), 1,
2015+ [933] = 1,
2016+ ACTIONS(312), 1,
2017+ sym_linerange,
2018+ [937] = 1,
2019+ ACTIONS(314), 1,
2020 anon_sym_and,
2021- [915] = 1,
2022- ACTIONS(269), 1,
2023+ [941] = 1,
2024+ ACTIONS(316), 1,
2025+ aux_sym_source_token1,
2026+ [945] = 1,
2027+ ACTIONS(280), 1,
2028 aux_sym_source_token1,
2029- [919] = 1,
2030- ACTIONS(305), 1,
2031+ [949] = 1,
2032+ ACTIONS(318), 1,
2033 aux_sym_source_token1,
2034- [923] = 1,
2035- ACTIONS(307), 1,
2036+ [953] = 1,
2037+ ACTIONS(320), 1,
2038 aux_sym_source_token1,
2039- [927] = 1,
2040- ACTIONS(309), 1,
2041+ [957] = 1,
2042+ ACTIONS(322), 1,
2043 aux_sym_similarity_token1,
2044- [931] = 1,
2045- ACTIONS(311), 1,
2046+ [961] = 1,
2047+ ACTIONS(324), 1,
2048 aux_sym_source_token1,
2049- [935] = 1,
2050- ACTIONS(313), 1,
2051+ [965] = 1,
2052+ ACTIONS(326), 1,
2053 anon_sym_DOT_DOT,
2054- [939] = 1,
2055- ACTIONS(315), 1,
2056+ [969] = 1,
2057+ ACTIONS(328), 1,
2058 aux_sym_source_token1,
2059- [943] = 1,
2060- ACTIONS(317), 1,
2061+ [973] = 1,
2062+ ACTIONS(330), 1,
2063 aux_sym_source_token1,
2064- [947] = 1,
2065- ACTIONS(319), 1,
2066+ [977] = 1,
2067+ ACTIONS(332), 1,
2068 aux_sym_source_token1,
2069- [951] = 1,
2070- ACTIONS(321), 1,
2071- aux_sym_command_token1,
2072- [955] = 1,
2073- ACTIONS(206), 1,
2074+ [981] = 1,
2075+ ACTIONS(334), 1,
2076+ anon_sym_AT_AT2,
2077+ [985] = 1,
2078+ ACTIONS(211), 1,
2079 aux_sym_source_token1,
2080- [959] = 1,
2081- ACTIONS(212), 1,
2082+ [989] = 1,
2083+ ACTIONS(217), 1,
2084 aux_sym_source_token1,
2085- [963] = 1,
2086- ACTIONS(323), 1,
2087- anon_sym_AT_AT2,
2088- [967] = 1,
2089- ACTIONS(325), 1,
2090+ [993] = 1,
2091+ ACTIONS(336), 1,
2092+ aux_sym_command_token1,
2093+ [997] = 1,
2094+ ACTIONS(338), 1,
2095 ts_builtin_sym_end,
2096- [971] = 1,
2097- ACTIONS(327), 1,
2098+ [1001] = 1,
2099+ ACTIONS(340), 1,
2100 sym_linerange,
2101- [975] = 1,
2102- ACTIONS(329), 1,
2103+ [1005] = 1,
2104+ ACTIONS(342), 1,
2105 anon_sym_index2,
2106- [979] = 1,
2107- ACTIONS(331), 1,
2108+ [1009] = 1,
2109+ ACTIONS(344), 1,
2110 sym_commit,
2111- [983] = 1,
2112- ACTIONS(333), 1,
2113+ [1013] = 1,
2114+ ACTIONS(346), 1,
2115 anon_sym_files,
2116- [987] = 1,
2117- ACTIONS(335), 1,
2118+ [1017] = 1,
2119+ ACTIONS(348), 1,
2120 anon_sym_PERCENT,
2121- [991] = 1,
2122- ACTIONS(263), 1,
2123+ [1021] = 1,
2124+ ACTIONS(274), 1,
2125 anon_sym_mode,
2126- [995] = 1,
2127- ACTIONS(261), 1,
2128+ [1025] = 1,
2129+ ACTIONS(272), 1,
2130 anon_sym_file,
2131- [999] = 1,
2132- ACTIONS(337), 1,
2133+ [1029] = 1,
2134+ ACTIONS(350), 1,
2135 sym_commit,
2136 };
2137
2138 static const uint32_t ts_small_parse_table_map[] = {
2139 [SMALL_STATE(4)] = 0,
2140- [SMALL_STATE(5)] = 53,
2141- [SMALL_STATE(6)] = 106,
2142- [SMALL_STATE(7)] = 154,
2143- [SMALL_STATE(8)] = 203,
2144- [SMALL_STATE(9)] = 249,
2145- [SMALL_STATE(10)] = 295,
2146- [SMALL_STATE(11)] = 329,
2147- [SMALL_STATE(12)] = 363,
2148- [SMALL_STATE(13)] = 393,
2149- [SMALL_STATE(14)] = 423,
2150- [SMALL_STATE(15)] = 448,
2151- [SMALL_STATE(16)] = 473,
2152- [SMALL_STATE(17)] = 498,
2153- [SMALL_STATE(18)] = 523,
2154- [SMALL_STATE(19)] = 548,
2155- [SMALL_STATE(20)] = 564,
2156- [SMALL_STATE(21)] = 580,
2157- [SMALL_STATE(22)] = 594,
2158- [SMALL_STATE(23)] = 608,
2159- [SMALL_STATE(24)] = 621,
2160- [SMALL_STATE(25)] = 634,
2161- [SMALL_STATE(26)] = 645,
2162- [SMALL_STATE(27)] = 655,
2163- [SMALL_STATE(28)] = 665,
2164- [SMALL_STATE(29)] = 675,
2165- [SMALL_STATE(30)] = 685,
2166- [SMALL_STATE(31)] = 695,
2167- [SMALL_STATE(32)] = 705,
2168- [SMALL_STATE(33)] = 715,
2169- [SMALL_STATE(34)] = 725,
2170- [SMALL_STATE(35)] = 735,
2171- [SMALL_STATE(36)] = 745,
2172- [SMALL_STATE(37)] = 755,
2173- [SMALL_STATE(38)] = 765,
2174- [SMALL_STATE(39)] = 775,
2175- [SMALL_STATE(40)] = 782,
2176- [SMALL_STATE(41)] = 787,
2177- [SMALL_STATE(42)] = 794,
2178- [SMALL_STATE(43)] = 799,
2179- [SMALL_STATE(44)] = 806,
2180- [SMALL_STATE(45)] = 813,
2181- [SMALL_STATE(46)] = 820,
2182- [SMALL_STATE(47)] = 825,
2183- [SMALL_STATE(48)] = 830,
2184- [SMALL_STATE(49)] = 835,
2185- [SMALL_STATE(50)] = 840,
2186- [SMALL_STATE(51)] = 845,
2187- [SMALL_STATE(52)] = 852,
2188- [SMALL_STATE(53)] = 857,
2189- [SMALL_STATE(54)] = 862,
2190- [SMALL_STATE(55)] = 869,
2191- [SMALL_STATE(56)] = 874,
2192- [SMALL_STATE(57)] = 881,
2193- [SMALL_STATE(58)] = 886,
2194- [SMALL_STATE(59)] = 891,
2195- [SMALL_STATE(60)] = 895,
2196- [SMALL_STATE(61)] = 899,
2197- [SMALL_STATE(62)] = 903,
2198- [SMALL_STATE(63)] = 907,
2199- [SMALL_STATE(64)] = 911,
2200- [SMALL_STATE(65)] = 915,
2201- [SMALL_STATE(66)] = 919,
2202- [SMALL_STATE(67)] = 923,
2203- [SMALL_STATE(68)] = 927,
2204- [SMALL_STATE(69)] = 931,
2205- [SMALL_STATE(70)] = 935,
2206- [SMALL_STATE(71)] = 939,
2207- [SMALL_STATE(72)] = 943,
2208- [SMALL_STATE(73)] = 947,
2209- [SMALL_STATE(74)] = 951,
2210- [SMALL_STATE(75)] = 955,
2211- [SMALL_STATE(76)] = 959,
2212- [SMALL_STATE(77)] = 963,
2213- [SMALL_STATE(78)] = 967,
2214- [SMALL_STATE(79)] = 971,
2215- [SMALL_STATE(80)] = 975,
2216- [SMALL_STATE(81)] = 979,
2217- [SMALL_STATE(82)] = 983,
2218- [SMALL_STATE(83)] = 987,
2219- [SMALL_STATE(84)] = 991,
2220- [SMALL_STATE(85)] = 995,
2221- [SMALL_STATE(86)] = 999,
2222+ [SMALL_STATE(5)] = 54,
2223+ [SMALL_STATE(6)] = 108,
2224+ [SMALL_STATE(7)] = 157,
2225+ [SMALL_STATE(8)] = 207,
2226+ [SMALL_STATE(9)] = 254,
2227+ [SMALL_STATE(10)] = 301,
2228+ [SMALL_STATE(11)] = 336,
2229+ [SMALL_STATE(12)] = 371,
2230+ [SMALL_STATE(13)] = 402,
2231+ [SMALL_STATE(14)] = 433,
2232+ [SMALL_STATE(15)] = 459,
2233+ [SMALL_STATE(16)] = 485,
2234+ [SMALL_STATE(17)] = 511,
2235+ [SMALL_STATE(18)] = 537,
2236+ [SMALL_STATE(19)] = 563,
2237+ [SMALL_STATE(20)] = 579,
2238+ [SMALL_STATE(21)] = 593,
2239+ [SMALL_STATE(22)] = 607,
2240+ [SMALL_STATE(23)] = 623,
2241+ [SMALL_STATE(24)] = 636,
2242+ [SMALL_STATE(25)] = 647,
2243+ [SMALL_STATE(26)] = 660,
2244+ [SMALL_STATE(27)] = 670,
2245+ [SMALL_STATE(28)] = 680,
2246+ [SMALL_STATE(29)] = 690,
2247+ [SMALL_STATE(30)] = 700,
2248+ [SMALL_STATE(31)] = 710,
2249+ [SMALL_STATE(32)] = 720,
2250+ [SMALL_STATE(33)] = 730,
2251+ [SMALL_STATE(34)] = 740,
2252+ [SMALL_STATE(35)] = 750,
2253+ [SMALL_STATE(36)] = 760,
2254+ [SMALL_STATE(37)] = 770,
2255+ [SMALL_STATE(38)] = 780,
2256+ [SMALL_STATE(39)] = 790,
2257+ [SMALL_STATE(40)] = 800,
2258+ [SMALL_STATE(41)] = 805,
2259+ [SMALL_STATE(42)] = 810,
2260+ [SMALL_STATE(43)] = 817,
2261+ [SMALL_STATE(44)] = 822,
2262+ [SMALL_STATE(45)] = 829,
2263+ [SMALL_STATE(46)] = 836,
2264+ [SMALL_STATE(47)] = 843,
2265+ [SMALL_STATE(48)] = 848,
2266+ [SMALL_STATE(49)] = 853,
2267+ [SMALL_STATE(50)] = 858,
2268+ [SMALL_STATE(51)] = 865,
2269+ [SMALL_STATE(52)] = 872,
2270+ [SMALL_STATE(53)] = 877,
2271+ [SMALL_STATE(54)] = 882,
2272+ [SMALL_STATE(55)] = 889,
2273+ [SMALL_STATE(56)] = 894,
2274+ [SMALL_STATE(57)] = 899,
2275+ [SMALL_STATE(58)] = 904,
2276+ [SMALL_STATE(59)] = 911,
2277+ [SMALL_STATE(60)] = 916,
2278+ [SMALL_STATE(61)] = 921,
2279+ [SMALL_STATE(62)] = 925,
2280+ [SMALL_STATE(63)] = 929,
2281+ [SMALL_STATE(64)] = 933,
2282+ [SMALL_STATE(65)] = 937,
2283+ [SMALL_STATE(66)] = 941,
2284+ [SMALL_STATE(67)] = 945,
2285+ [SMALL_STATE(68)] = 949,
2286+ [SMALL_STATE(69)] = 953,
2287+ [SMALL_STATE(70)] = 957,
2288+ [SMALL_STATE(71)] = 961,
2289+ [SMALL_STATE(72)] = 965,
2290+ [SMALL_STATE(73)] = 969,
2291+ [SMALL_STATE(74)] = 973,
2292+ [SMALL_STATE(75)] = 977,
2293+ [SMALL_STATE(76)] = 981,
2294+ [SMALL_STATE(77)] = 985,
2295+ [SMALL_STATE(78)] = 989,
2296+ [SMALL_STATE(79)] = 993,
2297+ [SMALL_STATE(80)] = 997,
2298+ [SMALL_STATE(81)] = 1001,
2299+ [SMALL_STATE(82)] = 1005,
2300+ [SMALL_STATE(83)] = 1009,
2301+ [SMALL_STATE(84)] = 1013,
2302+ [SMALL_STATE(85)] = 1017,
2303+ [SMALL_STATE(86)] = 1021,
2304+ [SMALL_STATE(87)] = 1025,
2305+ [SMALL_STATE(88)] = 1029,
2306 };
2307
2308 static const TSParseActionEntry ts_parse_actions[] = {
2309 @@ -2996,154 +3054,160 @@ static const TSParseActionEntry ts_parse_actions[] = {
2310 [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(),
2311 [3] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 0),
2312 [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2),
2313- [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74),
2314- [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(41),
2315- [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85),
2316- [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(84),
2317- [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42),
2318- [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82),
2319- [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
2320- [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80),
2321+ [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79),
2322+ [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42),
2323+ [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87),
2324+ [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(86),
2325+ [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(43),
2326+ [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84),
2327+ [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83),
2328+ [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82),
2329 [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19),
2330- [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(20),
2331- [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79),
2332- [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(29),
2333- [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29),
2334- [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26),
2335- [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26),
2336- [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(44),
2337- [39] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 1),
2338- [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3),
2339- [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54),
2340- [45] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2),
2341- [47] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(3),
2342- [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(74),
2343- [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(41),
2344- [56] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(85),
2345- [59] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(84),
2346- [62] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(42),
2347- [65] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(82),
2348- [68] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(81),
2349- [71] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(80),
2350- [74] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(19),
2351- [77] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(20),
2352- [80] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(79),
2353- [83] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(29),
2354- [86] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(29),
2355- [89] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(26),
2356- [92] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(26),
2357- [95] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(65),
2358- [98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3),
2359- [100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3),
2360- [102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(38),
2361- [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2),
2362- [106] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2),
2363- [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2),
2364- [110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2),
2365- [112] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(41),
2366- [115] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(85),
2367- [118] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(84),
2368- [121] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(42),
2369- [124] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(82),
2370- [127] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(81),
2371- [130] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(80),
2372- [133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunk, 2, .production_id = 2),
2373- [135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunk, 2, .production_id = 2),
2374- [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75),
2375- [139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(76),
2376- [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(43),
2377- [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_changes, 1),
2378- [145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_changes, 1),
2379- [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2),
2380- [149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2),
2381- [151] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(75),
2382- [154] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(76),
2383- [157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(29),
2384- [160] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(29),
2385- [163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(26),
2386- [166] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(26),
2387- [169] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(43),
2388- [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hunks_repeat1, 2),
2389- [174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hunks_repeat1, 2),
2390- [176] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hunks_repeat1, 2), SHIFT_REPEAT(79),
2391- [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunks, 1),
2392- [181] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunks, 1),
2393- [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13),
2394- [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_changes_repeat1, 2),
2395- [187] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat1, 2), SHIFT_REPEAT(13),
2396- [190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_changes_repeat1, 2),
2397- [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunk, 3, .production_id = 3),
2398- [194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunk, 3, .production_id = 3),
2399- [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 8),
2400- [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 8),
2401- [200] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2),
2402- [202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 7),
2403- [204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 7),
2404- [206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 1),
2405- [208] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deletion, 1),
2406- [210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
2407- [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 1),
2408- [214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_addition, 1),
2409- [216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filename, 1),
2410- [218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filename, 1),
2411- [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
2412- [222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2),
2413- [224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2),
2414- [226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(24),
2415- [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 4),
2416- [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48),
2417- [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55),
2418- [235] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(27),
2419- [238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58),
2420- [240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33),
2421- [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 4),
2422- [244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location, 4),
2423- [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
2424- [248] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35),
2425- [250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(35),
2426- [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37),
2427- [255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27),
2428- [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28),
2429- [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 3),
2430- [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
2431- [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45),
2432- [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32),
2433- [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
2434- [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16),
2435- [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_old_file, 2),
2436- [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_change, 6),
2437- [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mode, 1),
2438- [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_file, 2),
2439- [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 4),
2440- [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5),
2441- [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_similarity, 4, .production_id = 1),
2442- [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 2),
2443- [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 2),
2444- [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 5),
2445- [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 2),
2446- [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77),
2447- [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51),
2448- [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39),
2449- [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
2450- [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
2451- [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
2452- [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
2453- [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21),
2454- [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83),
2455- [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7),
2456- [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86),
2457- [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17),
2458- [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command, 3),
2459- [319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5),
2460- [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34),
2461- [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31),
2462- [325] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
2463- [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59),
2464- [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68),
2465- [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70),
2466- [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
2467- [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53),
2468- [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
2469+ [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22),
2470+ [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
2471+ [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33),
2472+ [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33),
2473+ [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(31),
2474+ [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31),
2475+ [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45),
2476+ [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
2477+ [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 1),
2478+ [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3),
2479+ [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54),
2480+ [47] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2),
2481+ [49] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(3),
2482+ [52] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(79),
2483+ [55] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(42),
2484+ [58] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(87),
2485+ [61] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(86),
2486+ [64] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(43),
2487+ [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(84),
2488+ [70] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(83),
2489+ [73] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(82),
2490+ [76] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(19),
2491+ [79] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(22),
2492+ [82] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(81),
2493+ [85] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(33),
2494+ [88] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(33),
2495+ [91] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(31),
2496+ [94] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(31),
2497+ [97] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(67),
2498+ [100] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(30),
2499+ [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3),
2500+ [105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3),
2501+ [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(39),
2502+ [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2),
2503+ [111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2),
2504+ [113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2),
2505+ [115] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2),
2506+ [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(42),
2507+ [120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(87),
2508+ [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(86),
2509+ [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(43),
2510+ [129] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(84),
2511+ [132] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(83),
2512+ [135] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(82),
2513+ [138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunk, 2, .production_id = 2),
2514+ [140] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunk, 2, .production_id = 2),
2515+ [142] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77),
2516+ [144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78),
2517+ [146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(44),
2518+ [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2),
2519+ [150] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2),
2520+ [152] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(77),
2521+ [155] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(78),
2522+ [158] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(33),
2523+ [161] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(33),
2524+ [164] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(31),
2525+ [167] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(31),
2526+ [170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat2, 2), SHIFT_REPEAT(44),
2527+ [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_changes, 1),
2528+ [175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_changes, 1),
2529+ [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunks, 1),
2530+ [179] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunks, 1),
2531+ [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hunks_repeat1, 2),
2532+ [183] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hunks_repeat1, 2),
2533+ [185] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hunks_repeat1, 2), SHIFT_REPEAT(81),
2534+ [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_changes_repeat1, 2),
2535+ [190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_changes_repeat1, 2), SHIFT_REPEAT(12),
2536+ [193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_changes_repeat1, 2),
2537+ [195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12),
2538+ [197] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2),
2539+ [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hunk, 3, .production_id = 3),
2540+ [201] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hunk, 3, .production_id = 3),
2541+ [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 7),
2542+ [205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 7),
2543+ [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 8),
2544+ [209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 8),
2545+ [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 1),
2546+ [213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deletion, 1),
2547+ [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
2548+ [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 1),
2549+ [219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_addition, 1),
2550+ [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filename, 1),
2551+ [223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filename, 1),
2552+ [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
2553+ [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 4),
2554+ [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
2555+ [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2),
2556+ [233] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2),
2557+ [235] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(25),
2558+ [238] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(27),
2559+ [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35),
2560+ [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 1),
2561+ [245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 1),
2562+ [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
2563+ [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
2564+ [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
2565+ [253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 4),
2566+ [255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location, 4),
2567+ [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41),
2568+ [259] = {.entry = {.count = 1, .reusable = false}}, SHIFT(37),
2569+ [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38),
2570+ [263] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_filename_repeat1, 2), SHIFT_REPEAT(37),
2571+ [266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27),
2572+ [268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_change, 6),
2573+ [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location, 5),
2574+ [272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62),
2575+ [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46),
2576+ [276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28),
2577+ [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13),
2578+ [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14),
2579+ [282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mode, 1),
2580+ [284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_old_file, 2),
2581+ [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_file, 2),
2582+ [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32),
2583+ [290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 4),
2584+ [292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file_change, 3),
2585+ [294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 2),
2586+ [296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_similarity, 4, .production_id = 1),
2587+ [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2),
2588+ [300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deletion, 2),
2589+ [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5),
2590+ [304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_addition, 2),
2591+ [306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21),
2592+ [308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
2593+ [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
2594+ [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
2595+ [314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
2596+ [316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command, 3),
2597+ [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58),
2598+ [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
2599+ [322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85),
2600+ [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7),
2601+ [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88),
2602+ [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15),
2603+ [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51),
2604+ [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5),
2605+ [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34),
2606+ [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26),
2607+ [338] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
2608+ [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64),
2609+ [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70),
2610+ [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72),
2611+ [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29),
2612+ [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55),
2613+ [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
2614 };
2615
2616 #ifdef __cplusplus