@algosail/tree-sitter 0.1.0

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