~repos /plum

#treesitter#compiler#wasm

git clone https://pyrossh.dev/repos/plum.git

A statically typed, imperative programming language inspired by rust, python


54c4365a Peter John

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