diff --git a/grammar.js b/grammar.js index 26df33f..363bc55 100644 --- a/grammar.js +++ b/grammar.js @@ -62,9 +62,9 @@ module.exports = grammar({ singleton_type: $ => seq("singleton", "(", $.class_name, ")"), - union_type: $ => prec.left(1, seq($.type, "|", $.type)), + union_type: $ => prec.left(1, seq(field("left", $.type), "|", field("right", $.type))), - intersection_type: $ => prec.left(2, seq($.type, "&", $.type)), + intersection_type: $ => prec.left(2, seq(field("left", $.type), "&", field("right", $.type))), optional_type: $ => prec(3, seq($.type, token.immediate("?"))), @@ -176,8 +176,8 @@ module.exports = grammar({ module_self_type_binds: $ => seq(":", $.module_self_types), - class_alias_decl: $ => seq("class", $.class_name, "=", $.class_name), - module_alias_decl: $ => seq("module", alias($.class_name, $.module_name), "=", alias($.class_name, $.module_name)), + class_alias_decl: $ => seq("class", field("new_name", $.class_name), "=", field("origin_name", $.class_name)), + module_alias_decl: $ => seq("module", field("new_name", alias($.class_name, $.module_name)), "=", field("origin_name", alias($.class_name, $.module_name))), module_self_types: $ => choice( seq($.class_name, optional($.type_arguments), optional(seq(",", $.module_self_types))), @@ -319,9 +319,11 @@ module.exports = grammar({ seq("prepend", $.interface_name, optional($.type_arguments)), ), + singleton_method_name: $ => seq($.self, ".", $.method_name), + alias_member: $ => choice( - seq("alias", $.method_name, $.method_name), - seq("alias", $.self, ".", $.method_name, $.self, ".", $.method_name), + seq("alias", field("new_name", $.method_name), field("origin_name", $.method_name)), + seq("alias", field("new_name", $.singleton_method_name), field("origin_name", $.singleton_method_name)), ), ivar_name: $ => /@[a-zA-Z]\w+/, diff --git a/src/grammar.json b/src/grammar.json index c4fde34..bde228b 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -265,16 +265,24 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "type" + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "type" + } }, { "type": "STRING", "value": "|" }, { - "type": "SYMBOL", - "name": "type" + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "type" + } } ] } @@ -286,16 +294,24 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "type" + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "type" + } }, { "type": "STRING", "value": "&" }, { - "type": "SYMBOL", - "name": "type" + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "type" + } } ] } @@ -1174,16 +1190,24 @@ "value": "class" }, { - "type": "SYMBOL", - "name": "class_name" + "type": "FIELD", + "name": "new_name", + "content": { + "type": "SYMBOL", + "name": "class_name" + } }, { "type": "STRING", "value": "=" }, { - "type": "SYMBOL", - "name": "class_name" + "type": "FIELD", + "name": "origin_name", + "content": { + "type": "SYMBOL", + "name": "class_name" + } } ] }, @@ -1195,26 +1219,34 @@ "value": "module" }, { - "type": "ALIAS", + "type": "FIELD", + "name": "new_name", "content": { - "type": "SYMBOL", - "name": "class_name" - }, - "named": true, - "value": "module_name" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "class_name" + }, + "named": true, + "value": "module_name" + } }, { "type": "STRING", "value": "=" }, { - "type": "ALIAS", + "type": "FIELD", + "name": "origin_name", "content": { - "type": "SYMBOL", - "name": "class_name" - }, - "named": true, - "value": "module_name" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "class_name" + }, + "named": true, + "value": "module_name" + } } ] }, @@ -2810,6 +2842,23 @@ } ] }, + "singleton_method_name": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "self" + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "SYMBOL", + "name": "method_name" + } + ] + }, "alias_member": { "type": "CHOICE", "members": [ @@ -2821,12 +2870,20 @@ "value": "alias" }, { - "type": "SYMBOL", - "name": "method_name" + "type": "FIELD", + "name": "new_name", + "content": { + "type": "SYMBOL", + "name": "method_name" + } }, { - "type": "SYMBOL", - "name": "method_name" + "type": "FIELD", + "name": "origin_name", + "content": { + "type": "SYMBOL", + "name": "method_name" + } } ] }, @@ -2838,28 +2895,20 @@ "value": "alias" }, { - "type": "SYMBOL", - "name": "self" - }, - { - "type": "STRING", - "value": "." - }, - { - "type": "SYMBOL", - "name": "method_name" - }, - { - "type": "SYMBOL", - "name": "self" - }, - { - "type": "STRING", - "value": "." + "type": "FIELD", + "name": "new_name", + "content": { + "type": "SYMBOL", + "name": "singleton_method_name" + } }, { - "type": "SYMBOL", - "name": "method_name" + "type": "FIELD", + "name": "origin_name", + "content": { + "type": "SYMBOL", + "name": "singleton_method_name" + } } ] } diff --git a/src/node-types.json b/src/node-types.json index aa98be5..c068d51 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -2,20 +2,35 @@ { "type": "alias_member", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "method_name", - "named": true - }, - { - "type": "self", - "named": true - } - ] + "fields": { + "new_name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "method_name", + "named": true + }, + { + "type": "singleton_method_name", + "named": true + } + ] + }, + "origin_name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "method_name", + "named": true + }, + { + "type": "singleton_method_name", + "named": true + } + ] + } } }, { @@ -156,16 +171,27 @@ { "type": "class_alias_decl", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "class_name", - "named": true - } - ] + "fields": { + "new_name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "class_name", + "named": true + } + ] + }, + "origin_name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "class_name", + "named": true + } + ] + } } }, { @@ -458,16 +484,27 @@ { "type": "intersection_type", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "type", - "named": true - } - ] + "fields": { + "left": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type", + "named": true + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type", + "named": true + } + ] + } } }, { @@ -697,16 +734,27 @@ { "type": "module_alias_decl", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "module_name", - "named": true - } - ] + "fields": { + "new_name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "module_name", + "named": true + } + ] + }, + "origin_name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "module_name", + "named": true + } + ] + } } }, { @@ -1156,6 +1204,25 @@ ] } }, + { + "type": "singleton_method_name", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "method_name", + "named": true + }, + { + "type": "self", + "named": true + } + ] + } + }, { "type": "singleton_type", "named": true, @@ -1400,16 +1467,27 @@ { "type": "union_type", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "type", - "named": true - } - ] + "fields": { + "left": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type", + "named": true + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type", + "named": true + } + ] + } } }, { diff --git a/src/parser.c b/src/parser.c index c8e042b..1c67462 100644 --- a/src/parser.c +++ b/src/parser.c @@ -14,15 +14,15 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 536 +#define STATE_COUNT 532 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 156 +#define SYMBOL_COUNT 157 #define ALIAS_COUNT 7 #define TOKEN_COUNT 72 #define EXTERNAL_TOKEN_COUNT 0 -#define FIELD_COUNT 2 +#define FIELD_COUNT 6 #define MAX_ALIAS_SEQUENCE_LENGTH 8 -#define PRODUCTION_ID_COUNT 19 +#define PRODUCTION_ID_COUNT 22 enum { sym_identifier = 1, @@ -165,28 +165,29 @@ enum { sym_include_member = 138, sym_extend_member = 139, sym_prepend_member = 140, - sym_alias_member = 141, - sym_method_name = 142, - aux_sym_program_repeat1 = 143, - aux_sym_program_repeat2 = 144, - aux_sym_tuple_type_repeat1 = 145, - aux_sym_record_type_repeat1 = 146, - aux_sym_string_literal_repeat1 = 147, - aux_sym_string_literal_repeat2 = 148, - aux_sym_use_directive_repeat1 = 149, - aux_sym_class_decl_repeat1 = 150, - aux_sym_interface_decl_repeat1 = 151, - aux_sym_module_type_parameters_repeat1 = 152, - aux_sym_required_positionals_repeat1 = 153, - aux_sym_optional_positionals_repeat1 = 154, - aux_sym_method_type_parameters_repeat1 = 155, - alias_sym_interface_members = 156, - alias_sym_keyword = 157, - alias_sym_members = 158, - alias_sym_module_name = 159, - alias_sym_record_key = 160, - alias_sym_simple_type_name = 161, - alias_sym_type_name = 162, + sym_singleton_method_name = 141, + sym_alias_member = 142, + sym_method_name = 143, + aux_sym_program_repeat1 = 144, + aux_sym_program_repeat2 = 145, + aux_sym_tuple_type_repeat1 = 146, + aux_sym_record_type_repeat1 = 147, + aux_sym_string_literal_repeat1 = 148, + aux_sym_string_literal_repeat2 = 149, + aux_sym_use_directive_repeat1 = 150, + aux_sym_class_decl_repeat1 = 151, + aux_sym_interface_decl_repeat1 = 152, + aux_sym_module_type_parameters_repeat1 = 153, + aux_sym_required_positionals_repeat1 = 154, + aux_sym_optional_positionals_repeat1 = 155, + aux_sym_method_type_parameters_repeat1 = 156, + alias_sym_interface_members = 157, + alias_sym_keyword = 158, + alias_sym_members = 159, + alias_sym_module_name = 160, + alias_sym_record_key = 161, + alias_sym_simple_type_name = 162, + alias_sym_type_name = 163, }; static const char * const ts_symbol_names[] = { @@ -331,6 +332,7 @@ static const char * const ts_symbol_names[] = { [sym_include_member] = "include_member", [sym_extend_member] = "extend_member", [sym_prepend_member] = "prepend_member", + [sym_singleton_method_name] = "singleton_method_name", [sym_alias_member] = "alias_member", [sym_method_name] = "method_name", [aux_sym_program_repeat1] = "program_repeat1", @@ -497,6 +499,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_include_member] = sym_include_member, [sym_extend_member] = sym_extend_member, [sym_prepend_member] = sym_prepend_member, + [sym_singleton_method_name] = sym_singleton_method_name, [sym_alias_member] = sym_alias_member, [sym_method_name] = sym_method_name, [aux_sym_program_repeat1] = aux_sym_program_repeat1, @@ -1086,6 +1089,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_singleton_method_name] = { + .visible = true, + .named = true, + }, [sym_alias_member] = { .visible = true, .named = true, @@ -1178,35 +1185,56 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { enum { field_key = 1, - field_value = 2, + field_left = 2, + field_new_name = 3, + field_origin_name = 4, + field_right = 5, + field_value = 6, }; static const char * const ts_field_names[] = { [0] = NULL, [field_key] = "key", + [field_left] = "left", + [field_new_name] = "new_name", + [field_origin_name] = "origin_name", + [field_right] = "right", [field_value] = "value", }; static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { - [11] = {.index = 0, .length = 2}, - [14] = {.index = 2, .length = 2}, - [15] = {.index = 4, .length = 4}, - [16] = {.index = 8, .length = 4}, + [3] = {.index = 0, .length = 2}, + [6] = {.index = 0, .length = 2}, + [9] = {.index = 2, .length = 2}, + [13] = {.index = 4, .length = 2}, + [14] = {.index = 6, .length = 2}, + [17] = {.index = 8, .length = 2}, + [18] = {.index = 10, .length = 4}, + [19] = {.index = 14, .length = 4}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = + {field_new_name, 1}, + {field_origin_name, 3}, + [2] = + {field_new_name, 1}, + {field_origin_name, 2}, + [4] = {field_key, 1, .inherited = true}, {field_value, 1, .inherited = true}, - [2] = + [6] = + {field_left, 0}, + {field_right, 2}, + [8] = {field_key, 0}, {field_value, 2}, - [4] = + [10] = {field_key, 1, .inherited = true}, {field_key, 2, .inherited = true}, {field_value, 1, .inherited = true}, {field_value, 2, .inherited = true}, - [8] = + [14] = {field_key, 0, .inherited = true}, {field_key, 1, .inherited = true}, {field_value, 0, .inherited = true}, @@ -1221,48 +1249,48 @@ static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE [2] = { [1] = alias_sym_module_name, }, - [3] = { + [4] = { [2] = alias_sym_members, }, - [4] = { + [5] = { [0] = alias_sym_type_name, [2] = alias_sym_simple_type_name, }, - [5] = { + [6] = { [1] = alias_sym_module_name, [3] = alias_sym_module_name, }, - [6] = { + [7] = { [1] = alias_sym_module_name, [2] = alias_sym_members, }, - [7] = { + [8] = { [2] = alias_sym_interface_members, }, - [8] = { + [10] = { [3] = alias_sym_members, }, - [9] = { + [11] = { [1] = alias_sym_module_name, [3] = alias_sym_members, }, - [10] = { + [12] = { [3] = alias_sym_interface_members, }, - [12] = { + [15] = { [4] = alias_sym_members, }, - [13] = { + [16] = { [1] = alias_sym_module_name, [4] = alias_sym_members, }, - [14] = { + [17] = { [0] = alias_sym_record_key, }, - [17] = { + [20] = { [0] = alias_sym_keyword, }, - [18] = { + [21] = { [1] = alias_sym_keyword, }, }; @@ -1307,24 +1335,24 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [22] = 22, [23] = 23, [24] = 24, - [25] = 25, - [26] = 26, + [25] = 21, + [26] = 23, [27] = 27, - [28] = 22, + [28] = 28, [29] = 29, - [30] = 30, + [30] = 22, [31] = 31, [32] = 32, - [33] = 29, - [34] = 26, - [35] = 26, - [36] = 27, + [33] = 33, + [34] = 20, + [35] = 35, + [36] = 20, [37] = 37, - [38] = 27, - [39] = 39, + [38] = 38, + [39] = 21, [40] = 40, - [41] = 22, - [42] = 42, + [41] = 41, + [42] = 22, [43] = 43, [44] = 44, [45] = 45, @@ -1334,39 +1362,39 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [49] = 49, [50] = 50, [51] = 51, - [52] = 52, + [52] = 46, [53] = 45, [54] = 54, - [55] = 55, - [56] = 56, + [55] = 49, + [56] = 47, [57] = 57, - [58] = 47, - [59] = 51, - [60] = 52, - [61] = 45, - [62] = 62, - [63] = 55, + [58] = 58, + [59] = 58, + [60] = 60, + [61] = 58, + [62] = 48, + [63] = 49, [64] = 64, - [65] = 57, - [66] = 56, - [67] = 67, - [68] = 68, + [65] = 65, + [66] = 66, + [67] = 47, + [68] = 60, [69] = 69, [70] = 70, - [71] = 57, - [72] = 56, - [73] = 47, + [71] = 60, + [72] = 72, + [73] = 73, [74] = 74, - [75] = 75, + [75] = 48, [76] = 76, - [77] = 77, + [77] = 46, [78] = 78, [79] = 79, [80] = 80, - [81] = 52, - [82] = 51, - [83] = 55, - [84] = 84, + [81] = 81, + [82] = 82, + [83] = 83, + [84] = 45, [85] = 85, [86] = 86, [87] = 87, @@ -1376,15 +1404,15 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [91] = 91, [92] = 92, [93] = 93, - [94] = 86, + [94] = 94, [95] = 95, [96] = 96, [97] = 97, [98] = 98, [99] = 99, [100] = 100, - [101] = 87, - [102] = 102, + [101] = 101, + [102] = 86, [103] = 103, [104] = 104, [105] = 105, @@ -1392,7 +1420,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [107] = 107, [108] = 108, [109] = 109, - [110] = 110, + [110] = 87, [111] = 111, [112] = 112, [113] = 113, @@ -1406,51 +1434,51 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [121] = 121, [122] = 122, [123] = 123, - [124] = 124, + [124] = 112, [125] = 125, - [126] = 100, + [126] = 126, [127] = 127, - [128] = 105, - [129] = 129, + [128] = 88, + [129] = 89, [130] = 90, [131] = 131, - [132] = 89, - [133] = 88, + [132] = 132, + [133] = 107, [134] = 134, - [135] = 91, - [136] = 136, - [137] = 137, + [135] = 135, + [136] = 111, + [137] = 94, [138] = 138, - [139] = 102, - [140] = 114, - [141] = 123, - [142] = 113, - [143] = 119, - [144] = 108, - [145] = 99, - [146] = 93, - [147] = 98, - [148] = 104, - [149] = 109, - [150] = 150, - [151] = 120, - [152] = 96, - [153] = 121, - [154] = 122, - [155] = 115, - [156] = 118, - [157] = 111, - [158] = 158, - [159] = 112, - [160] = 103, - [161] = 110, - [162] = 107, - [163] = 106, - [164] = 92, - [165] = 95, + [139] = 139, + [140] = 101, + [141] = 118, + [142] = 119, + [143] = 123, + [144] = 144, + [145] = 122, + [146] = 121, + [147] = 120, + [148] = 97, + [149] = 108, + [150] = 96, + [151] = 105, + [152] = 99, + [153] = 98, + [154] = 104, + [155] = 106, + [156] = 117, + [157] = 103, + [158] = 95, + [159] = 109, + [160] = 116, + [161] = 92, + [162] = 115, + [163] = 113, + [164] = 164, + [165] = 114, [166] = 166, - [167] = 117, - [168] = 116, + [167] = 91, + [168] = 93, [169] = 169, [170] = 170, [171] = 171, @@ -1534,53 +1562,53 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [249] = 249, [250] = 250, [251] = 251, - [252] = 214, - [253] = 89, + [252] = 218, + [253] = 86, [254] = 254, - [255] = 86, + [255] = 87, [256] = 88, - [257] = 87, - [258] = 258, + [257] = 89, + [258] = 90, [259] = 259, - [260] = 90, - [261] = 91, - [262] = 100, - [263] = 102, - [264] = 105, - [265] = 117, - [266] = 120, - [267] = 267, - [268] = 268, + [260] = 260, + [261] = 94, + [262] = 107, + [263] = 111, + [264] = 112, + [265] = 118, + [266] = 101, + [267] = 117, + [268] = 91, [269] = 92, - [270] = 122, - [271] = 268, - [272] = 123, - [273] = 103, - [274] = 107, - [275] = 106, - [276] = 97, - [277] = 268, - [278] = 278, - [279] = 111, + [270] = 103, + [271] = 100, + [272] = 272, + [273] = 116, + [274] = 95, + [275] = 97, + [276] = 98, + [277] = 99, + [278] = 105, + [279] = 108, [280] = 280, - [281] = 93, - [282] = 115, - [283] = 283, - [284] = 110, - [285] = 109, - [286] = 108, - [287] = 104, - [288] = 113, - [289] = 119, - [290] = 99, - [291] = 98, - [292] = 96, - [293] = 114, - [294] = 118, - [295] = 121, - [296] = 112, - [297] = 116, - [298] = 95, + [281] = 281, + [282] = 119, + [283] = 122, + [284] = 120, + [285] = 285, + [286] = 286, + [287] = 285, + [288] = 123, + [289] = 114, + [290] = 113, + [291] = 285, + [292] = 121, + [293] = 115, + [294] = 93, + [295] = 109, + [296] = 106, + [297] = 104, + [298] = 96, [299] = 299, [300] = 300, [301] = 301, @@ -1594,79 +1622,79 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [309] = 309, [310] = 310, [311] = 311, - [312] = 308, - [313] = 313, - [314] = 309, - [315] = 310, - [316] = 134, + [312] = 312, + [313] = 100, + [314] = 314, + [315] = 308, + [316] = 316, [317] = 317, - [318] = 308, + [318] = 134, [319] = 319, - [320] = 320, - [321] = 97, + [320] = 316, + [321] = 316, [322] = 322, - [323] = 323, - [324] = 309, - [325] = 310, + [323] = 308, + [324] = 307, + [325] = 307, [326] = 326, [327] = 327, [328] = 328, [329] = 329, [330] = 330, - [331] = 331, - [332] = 137, - [333] = 136, + [331] = 135, + [332] = 332, + [333] = 333, [334] = 334, - [335] = 335, + [335] = 139, [336] = 336, [337] = 337, [338] = 338, [339] = 339, [340] = 340, [341] = 341, - [342] = 342, + [342] = 341, [343] = 343, [344] = 344, [345] = 345, - [346] = 346, + [346] = 341, [347] = 347, - [348] = 341, - [349] = 343, + [348] = 348, + [349] = 349, [350] = 350, - [351] = 344, - [352] = 345, + [351] = 351, + [352] = 351, [353] = 353, - [354] = 346, - [355] = 346, + [354] = 354, + [355] = 355, [356] = 356, - [357] = 347, - [358] = 343, - [359] = 339, - [360] = 360, - [361] = 347, + [357] = 348, + [358] = 358, + [359] = 359, + [360] = 337, + [361] = 361, [362] = 362, [363] = 363, [364] = 364, [365] = 365, - [366] = 341, + [366] = 366, [367] = 367, - [368] = 344, - [369] = 345, - [370] = 370, + [368] = 368, + [369] = 366, + [370] = 365, [371] = 371, - [372] = 372, + [372] = 361, [373] = 373, - [374] = 374, - [375] = 375, + [374] = 364, + [375] = 361, [376] = 376, - [377] = 377, - [378] = 378, - [379] = 339, - [380] = 380, - [381] = 381, + [377] = 337, + [378] = 351, + [379] = 379, + [380] = 365, + [381] = 366, [382] = 382, [383] = 383, - [384] = 384, + [384] = 364, [385] = 385, [386] = 386, [387] = 387, @@ -1675,39 +1703,39 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [390] = 390, [391] = 391, [392] = 392, - [393] = 393, + [393] = 386, [394] = 394, [395] = 395, - [396] = 396, - [397] = 389, - [398] = 398, - [399] = 393, - [400] = 395, + [396] = 389, + [397] = 397, + [398] = 395, + [399] = 389, + [400] = 400, [401] = 401, - [402] = 383, - [403] = 403, - [404] = 384, - [405] = 383, - [406] = 384, + [402] = 385, + [403] = 387, + [404] = 388, + [405] = 405, + [406] = 392, [407] = 407, [408] = 408, - [409] = 409, - [410] = 408, - [411] = 396, + [409] = 392, + [410] = 388, + [411] = 394, [412] = 412, - [413] = 412, - [414] = 389, - [415] = 415, - [416] = 391, - [417] = 391, + [413] = 413, + [414] = 387, + [415] = 385, + [416] = 386, + [417] = 417, [418] = 418, - [419] = 408, - [420] = 420, + [419] = 419, + [420] = 395, [421] = 421, - [422] = 393, - [423] = 423, - [424] = 395, - [425] = 396, + [422] = 422, + [423] = 394, + [424] = 424, + [425] = 425, [426] = 426, [427] = 427, [428] = 428, @@ -1727,21 +1755,21 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [442] = 442, [443] = 443, [444] = 444, - [445] = 445, + [445] = 435, [446] = 446, - [447] = 434, + [447] = 447, [448] = 448, - [449] = 449, + [449] = 436, [450] = 450, - [451] = 431, + [451] = 451, [452] = 452, [453] = 453, [454] = 454, [455] = 455, - [456] = 456, + [456] = 433, [457] = 457, [458] = 458, - [459] = 446, + [459] = 459, [460] = 460, [461] = 461, [462] = 462, @@ -1770,21 +1798,21 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [485] = 485, [486] = 486, [487] = 487, - [488] = 488, - [489] = 481, + [488] = 471, + [489] = 489, [490] = 490, [491] = 491, - [492] = 492, + [492] = 332, [493] = 493, [494] = 494, - [495] = 467, + [495] = 495, [496] = 496, [497] = 497, [498] = 498, [499] = 499, [500] = 500, [501] = 501, - [502] = 501, + [502] = 489, [503] = 503, [504] = 504, [505] = 505, @@ -1795,29 +1823,25 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [510] = 510, [511] = 511, [512] = 512, - [513] = 513, - [514] = 488, - [515] = 481, + [513] = 471, + [514] = 489, + [515] = 515, [516] = 516, - [517] = 499, - [518] = 327, - [519] = 519, - [520] = 520, - [521] = 467, - [522] = 488, + [517] = 517, + [518] = 499, + [519] = 480, + [520] = 461, + [521] = 461, + [522] = 522, [523] = 523, - [524] = 524, - [525] = 499, + [524] = 499, + [525] = 525, [526] = 526, [527] = 527, [528] = 528, - [529] = 487, - [530] = 530, - [531] = 531, - [532] = 471, - [533] = 533, - [534] = 471, - [535] = 520, + [529] = 529, + [530] = 491, + [531] = 491, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1925,6 +1949,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '\r') SKIP(12) END_STATE(); case 14: + if (lookahead == '\n') SKIP(33) + END_STATE(); + case 15: + if (lookahead == '\n') SKIP(33) + if (lookahead == '\r') SKIP(14) + END_STATE(); + case 16: if (lookahead == '\n') ADVANCE(196); if (lookahead == '\r') ADVANCE(195); if (lookahead == 'u') ADVANCE(43); @@ -1932,13 +1963,6 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (('0' <= lookahead && lookahead <= '7')) ADVANCE(199); if (lookahead != 0) ADVANCE(195); END_STATE(); - case 15: - if (lookahead == '\n') SKIP(33) - END_STATE(); - case 16: - if (lookahead == '\n') SKIP(33) - if (lookahead == '\r') SKIP(15) - END_STATE(); case 17: if (lookahead == '\n') SKIP(22) END_STATE(); @@ -2096,7 +2120,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 26: if (lookahead == '"') ADVANCE(179); if (lookahead == '#') ADVANCE(181); - if (lookahead == '\\') ADVANCE(21); + if (lookahead == '\\') ADVANCE(16); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || @@ -2194,7 +2218,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 33: if (lookahead == '#') ADVANCE(154); - if (lookahead == '\\') SKIP(16) + if (lookahead == '\\') SKIP(15) if (lookahead == 's') ADVANCE(274); if (lookahead == '\t' || lookahead == '\n' || @@ -2208,7 +2232,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 34: if (lookahead == '#') ADVANCE(184); if (lookahead == '\'') ADVANCE(180); - if (lookahead == '\\') ADVANCE(14); + if (lookahead == '\\') ADVANCE(21); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || @@ -3240,7 +3264,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 182: ACCEPT_TOKEN(sym_double_quote_string_body); if (lookahead == '#') ADVANCE(181); - if (lookahead == '\\') ADVANCE(21); + if (lookahead == '\\') ADVANCE(16); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || @@ -3264,7 +3288,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 185: ACCEPT_TOKEN(sym_single_quote_string_body); if (lookahead == '#') ADVANCE(184); - if (lookahead == '\\') ADVANCE(14); + if (lookahead == '\\') ADVANCE(21); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || @@ -3340,11 +3364,11 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 196: ACCEPT_TOKEN(sym_escape_sequence); - if (lookahead == '\\') ADVANCE(14); + if (lookahead == '\\') ADVANCE(16); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(185); + lookahead == ' ') ADVANCE(182); END_STATE(); case 197: ACCEPT_TOKEN(sym_escape_sequence); @@ -3352,7 +3376,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(182); + lookahead == ' ') ADVANCE(185); END_STATE(); case 198: ACCEPT_TOKEN(sym_escape_sequence); @@ -4667,8 +4691,8 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [7] = {.lex_state = 24}, [8] = {.lex_state = 24}, [9] = {.lex_state = 24}, - [10] = {.lex_state = 72}, - [11] = {.lex_state = 24}, + [10] = {.lex_state = 24}, + [11] = {.lex_state = 72}, [12] = {.lex_state = 72}, [13] = {.lex_state = 24}, [14] = {.lex_state = 24}, @@ -4677,14 +4701,14 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [17] = {.lex_state = 24}, [18] = {.lex_state = 72}, [19] = {.lex_state = 72}, - [20] = {.lex_state = 72}, - [21] = {.lex_state = 72}, + [20] = {.lex_state = 25}, + [21] = {.lex_state = 25}, [22] = {.lex_state = 25}, [23] = {.lex_state = 25}, [24] = {.lex_state = 25}, - [25] = {.lex_state = 72}, + [25] = {.lex_state = 25}, [26] = {.lex_state = 25}, - [27] = {.lex_state = 25}, + [27] = {.lex_state = 72}, [28] = {.lex_state = 25}, [29] = {.lex_state = 25}, [30] = {.lex_state = 25}, @@ -4692,16 +4716,16 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [32] = {.lex_state = 72}, [33] = {.lex_state = 25}, [34] = {.lex_state = 25}, - [35] = {.lex_state = 25}, + [35] = {.lex_state = 72}, [36] = {.lex_state = 25}, - [37] = {.lex_state = 25}, - [38] = {.lex_state = 25}, + [37] = {.lex_state = 72}, + [38] = {.lex_state = 72}, [39] = {.lex_state = 25}, [40] = {.lex_state = 72}, - [41] = {.lex_state = 25}, - [42] = {.lex_state = 72}, + [41] = {.lex_state = 72}, + [42] = {.lex_state = 25}, [43] = {.lex_state = 72}, - [44] = {.lex_state = 72}, + [44] = {.lex_state = 25}, [45] = {.lex_state = 25}, [46] = {.lex_state = 25}, [47] = {.lex_state = 25}, @@ -4781,33 +4805,33 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [121] = {.lex_state = 23}, [122] = {.lex_state = 23}, [123] = {.lex_state = 23}, - [124] = {.lex_state = 24}, + [124] = {.lex_state = 72}, [125] = {.lex_state = 24}, - [126] = {.lex_state = 72}, + [126] = {.lex_state = 24}, [127] = {.lex_state = 24}, [128] = {.lex_state = 72}, - [129] = {.lex_state = 24}, + [129] = {.lex_state = 72}, [130] = {.lex_state = 72}, [131] = {.lex_state = 24}, - [132] = {.lex_state = 72}, + [132] = {.lex_state = 24}, [133] = {.lex_state = 72}, [134] = {.lex_state = 24}, - [135] = {.lex_state = 72}, - [136] = {.lex_state = 24}, - [137] = {.lex_state = 24}, + [135] = {.lex_state = 24}, + [136] = {.lex_state = 72}, + [137] = {.lex_state = 72}, [138] = {.lex_state = 24}, - [139] = {.lex_state = 72}, + [139] = {.lex_state = 24}, [140] = {.lex_state = 72}, [141] = {.lex_state = 72}, [142] = {.lex_state = 72}, [143] = {.lex_state = 72}, - [144] = {.lex_state = 72}, + [144] = {.lex_state = 24}, [145] = {.lex_state = 72}, [146] = {.lex_state = 72}, [147] = {.lex_state = 72}, [148] = {.lex_state = 72}, [149] = {.lex_state = 72}, - [150] = {.lex_state = 24}, + [150] = {.lex_state = 72}, [151] = {.lex_state = 72}, [152] = {.lex_state = 72}, [153] = {.lex_state = 72}, @@ -4815,13 +4839,13 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [155] = {.lex_state = 72}, [156] = {.lex_state = 72}, [157] = {.lex_state = 72}, - [158] = {.lex_state = 24}, + [158] = {.lex_state = 72}, [159] = {.lex_state = 72}, [160] = {.lex_state = 72}, [161] = {.lex_state = 72}, [162] = {.lex_state = 72}, [163] = {.lex_state = 72}, - [164] = {.lex_state = 72}, + [164] = {.lex_state = 24}, [165] = {.lex_state = 72}, [166] = {.lex_state = 24}, [167] = {.lex_state = 72}, @@ -4830,7 +4854,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [170] = {.lex_state = 72}, [171] = {.lex_state = 72}, [172] = {.lex_state = 72}, - [173] = {.lex_state = 76}, + [173] = {.lex_state = 72}, [174] = {.lex_state = 72}, [175] = {.lex_state = 72}, [176] = {.lex_state = 72}, @@ -4842,7 +4866,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [182] = {.lex_state = 72}, [183] = {.lex_state = 72}, [184] = {.lex_state = 72}, - [185] = {.lex_state = 72}, + [185] = {.lex_state = 76}, [186] = {.lex_state = 72}, [187] = {.lex_state = 72}, [188] = {.lex_state = 72}, @@ -4870,7 +4894,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [210] = {.lex_state = 72}, [211] = {.lex_state = 72}, [212] = {.lex_state = 72}, - [213] = {.lex_state = 76}, + [213] = {.lex_state = 72}, [214] = {.lex_state = 72}, [215] = {.lex_state = 72}, [216] = {.lex_state = 72}, @@ -4881,12 +4905,12 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [221] = {.lex_state = 72}, [222] = {.lex_state = 72}, [223] = {.lex_state = 72}, - [224] = {.lex_state = 76}, + [224] = {.lex_state = 72}, [225] = {.lex_state = 72}, - [226] = {.lex_state = 72}, - [227] = {.lex_state = 72}, - [228] = {.lex_state = 76}, - [229] = {.lex_state = 72}, + [226] = {.lex_state = 76}, + [227] = {.lex_state = 76}, + [228] = {.lex_state = 72}, + [229] = {.lex_state = 76}, [230] = {.lex_state = 72}, [231] = {.lex_state = 72}, [232] = {.lex_state = 72}, @@ -4898,16 +4922,16 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [238] = {.lex_state = 29}, [239] = {.lex_state = 76}, [240] = {.lex_state = 76}, - [241] = {.lex_state = 74}, + [241] = {.lex_state = 76}, [242] = {.lex_state = 76}, [243] = {.lex_state = 76}, [244] = {.lex_state = 76}, [245] = {.lex_state = 76}, - [246] = {.lex_state = 76}, + [246] = {.lex_state = 74}, [247] = {.lex_state = 76}, - [248] = {.lex_state = 76}, + [248] = {.lex_state = 24}, [249] = {.lex_state = 76}, - [250] = {.lex_state = 24}, + [250] = {.lex_state = 76}, [251] = {.lex_state = 76}, [252] = {.lex_state = 29}, [253] = {.lex_state = 28}, @@ -4915,40 +4939,40 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [255] = {.lex_state = 28}, [256] = {.lex_state = 28}, [257] = {.lex_state = 28}, - [258] = {.lex_state = 76}, + [258] = {.lex_state = 28}, [259] = {.lex_state = 76}, - [260] = {.lex_state = 28}, + [260] = {.lex_state = 76}, [261] = {.lex_state = 28}, [262] = {.lex_state = 28}, [263] = {.lex_state = 28}, [264] = {.lex_state = 28}, [265] = {.lex_state = 28}, [266] = {.lex_state = 28}, - [267] = {.lex_state = 30}, - [268] = {.lex_state = 76}, + [267] = {.lex_state = 28}, + [268] = {.lex_state = 28}, [269] = {.lex_state = 28}, [270] = {.lex_state = 28}, - [271] = {.lex_state = 76}, - [272] = {.lex_state = 28}, + [271] = {.lex_state = 28}, + [272] = {.lex_state = 30}, [273] = {.lex_state = 28}, [274] = {.lex_state = 28}, [275] = {.lex_state = 28}, [276] = {.lex_state = 28}, - [277] = {.lex_state = 76}, - [278] = {.lex_state = 30}, + [277] = {.lex_state = 28}, + [278] = {.lex_state = 28}, [279] = {.lex_state = 28}, [280] = {.lex_state = 30}, - [281] = {.lex_state = 28}, + [281] = {.lex_state = 30}, [282] = {.lex_state = 28}, - [283] = {.lex_state = 30}, + [283] = {.lex_state = 28}, [284] = {.lex_state = 28}, - [285] = {.lex_state = 28}, - [286] = {.lex_state = 28}, - [287] = {.lex_state = 28}, + [285] = {.lex_state = 76}, + [286] = {.lex_state = 30}, + [287] = {.lex_state = 76}, [288] = {.lex_state = 28}, [289] = {.lex_state = 28}, [290] = {.lex_state = 28}, - [291] = {.lex_state = 28}, + [291] = {.lex_state = 76}, [292] = {.lex_state = 28}, [293] = {.lex_state = 28}, [294] = {.lex_state = 28}, @@ -4956,243 +4980,239 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [296] = {.lex_state = 28}, [297] = {.lex_state = 28}, [298] = {.lex_state = 28}, - [299] = {.lex_state = 30}, - [300] = {.lex_state = 29}, - [301] = {.lex_state = 30}, - [302] = {.lex_state = 76}, - [303] = {.lex_state = 24}, - [304] = {.lex_state = 29}, + [299] = {.lex_state = 76}, + [300] = {.lex_state = 24}, + [301] = {.lex_state = 24}, + [302] = {.lex_state = 30}, + [303] = {.lex_state = 29}, + [304] = {.lex_state = 30}, [305] = {.lex_state = 24}, - [306] = {.lex_state = 24}, - [307] = {.lex_state = 29}, + [306] = {.lex_state = 29}, + [307] = {.lex_state = 72}, [308] = {.lex_state = 72}, - [309] = {.lex_state = 72}, - [310] = {.lex_state = 76}, + [309] = {.lex_state = 24}, + [310] = {.lex_state = 24}, [311] = {.lex_state = 30}, - [312] = {.lex_state = 72}, - [313] = {.lex_state = 30}, - [314] = {.lex_state = 72}, - [315] = {.lex_state = 76}, - [316] = {.lex_state = 30}, + [312] = {.lex_state = 24}, + [313] = {.lex_state = 28}, + [314] = {.lex_state = 9}, + [315] = {.lex_state = 72}, + [316] = {.lex_state = 76}, [317] = {.lex_state = 29}, - [318] = {.lex_state = 72}, - [319] = {.lex_state = 9}, - [320] = {.lex_state = 24}, - [321] = {.lex_state = 28}, - [322] = {.lex_state = 24}, - [323] = {.lex_state = 24}, + [318] = {.lex_state = 30}, + [319] = {.lex_state = 29}, + [320] = {.lex_state = 76}, + [321] = {.lex_state = 76}, + [322] = {.lex_state = 30}, + [323] = {.lex_state = 72}, [324] = {.lex_state = 72}, - [325] = {.lex_state = 76}, - [326] = {.lex_state = 72}, - [327] = {.lex_state = 9}, - [328] = {.lex_state = 29}, + [325] = {.lex_state = 72}, + [326] = {.lex_state = 0}, + [327] = {.lex_state = 31}, + [328] = {.lex_state = 24}, [329] = {.lex_state = 0}, - [330] = {.lex_state = 24}, - [331] = {.lex_state = 31}, - [332] = {.lex_state = 30}, - [333] = {.lex_state = 30}, - [334] = {.lex_state = 0}, - [335] = {.lex_state = 72}, - [336] = {.lex_state = 76}, - [337] = {.lex_state = 0}, - [338] = {.lex_state = 31}, + [330] = {.lex_state = 72}, + [331] = {.lex_state = 30}, + [332] = {.lex_state = 9}, + [333] = {.lex_state = 29}, + [334] = {.lex_state = 72}, + [335] = {.lex_state = 30}, + [336] = {.lex_state = 0}, + [337] = {.lex_state = 76}, + [338] = {.lex_state = 72}, [339] = {.lex_state = 0}, - [340] = {.lex_state = 76}, - [341] = {.lex_state = 76}, + [340] = {.lex_state = 0}, + [341] = {.lex_state = 0}, [342] = {.lex_state = 0}, - [343] = {.lex_state = 76}, - [344] = {.lex_state = 34}, - [345] = {.lex_state = 26}, - [346] = {.lex_state = 34}, - [347] = {.lex_state = 26}, - [348] = {.lex_state = 76}, - [349] = {.lex_state = 76}, - [350] = {.lex_state = 31}, - [351] = {.lex_state = 34}, - [352] = {.lex_state = 26}, - [353] = {.lex_state = 72}, - [354] = {.lex_state = 34}, - [355] = {.lex_state = 34}, - [356] = {.lex_state = 76}, - [357] = {.lex_state = 26}, - [358] = {.lex_state = 76}, - [359] = {.lex_state = 0}, - [360] = {.lex_state = 72}, - [361] = {.lex_state = 26}, - [362] = {.lex_state = 26}, - [363] = {.lex_state = 34}, - [364] = {.lex_state = 76}, - [365] = {.lex_state = 76}, - [366] = {.lex_state = 76}, - [367] = {.lex_state = 31}, - [368] = {.lex_state = 34}, - [369] = {.lex_state = 26}, - [370] = {.lex_state = 0}, + [343] = {.lex_state = 31}, + [344] = {.lex_state = 76}, + [345] = {.lex_state = 0}, + [346] = {.lex_state = 0}, + [347] = {.lex_state = 76}, + [348] = {.lex_state = 33}, + [349] = {.lex_state = 26}, + [350] = {.lex_state = 76}, + [351] = {.lex_state = 76}, + [352] = {.lex_state = 76}, + [353] = {.lex_state = 31}, + [354] = {.lex_state = 72}, + [355] = {.lex_state = 76}, + [356] = {.lex_state = 34}, + [357] = {.lex_state = 33}, + [358] = {.lex_state = 0}, + [359] = {.lex_state = 72}, + [360] = {.lex_state = 76}, + [361] = {.lex_state = 34}, + [362] = {.lex_state = 76}, + [363] = {.lex_state = 0}, + [364] = {.lex_state = 26}, + [365] = {.lex_state = 26}, + [366] = {.lex_state = 34}, + [367] = {.lex_state = 0}, + [368] = {.lex_state = 0}, + [369] = {.lex_state = 34}, + [370] = {.lex_state = 26}, [371] = {.lex_state = 76}, - [372] = {.lex_state = 76}, - [373] = {.lex_state = 72}, - [374] = {.lex_state = 0}, - [375] = {.lex_state = 76}, - [376] = {.lex_state = 0}, - [377] = {.lex_state = 0}, - [378] = {.lex_state = 72}, - [379] = {.lex_state = 0}, - [380] = {.lex_state = 0}, - [381] = {.lex_state = 76}, - [382] = {.lex_state = 0}, - [383] = {.lex_state = 0}, - [384] = {.lex_state = 31}, + [372] = {.lex_state = 34}, + [373] = {.lex_state = 76}, + [374] = {.lex_state = 26}, + [375] = {.lex_state = 34}, + [376] = {.lex_state = 72}, + [377] = {.lex_state = 76}, + [378] = {.lex_state = 76}, + [379] = {.lex_state = 76}, + [380] = {.lex_state = 26}, + [381] = {.lex_state = 34}, + [382] = {.lex_state = 31}, + [383] = {.lex_state = 76}, + [384] = {.lex_state = 26}, [385] = {.lex_state = 0}, - [386] = {.lex_state = 0}, - [387] = {.lex_state = 0}, + [386] = {.lex_state = 31}, + [387] = {.lex_state = 29}, [388] = {.lex_state = 0}, - [389] = {.lex_state = 0}, + [389] = {.lex_state = 29}, [390] = {.lex_state = 0}, - [391] = {.lex_state = 29}, - [392] = {.lex_state = 0}, - [393] = {.lex_state = 0}, + [391] = {.lex_state = 0}, + [392] = {.lex_state = 29}, + [393] = {.lex_state = 31}, [394] = {.lex_state = 0}, - [395] = {.lex_state = 29}, - [396] = {.lex_state = 0}, + [395] = {.lex_state = 0}, + [396] = {.lex_state = 29}, [397] = {.lex_state = 0}, - [398] = {.lex_state = 33}, - [399] = {.lex_state = 0}, - [400] = {.lex_state = 29}, - [401] = {.lex_state = 0}, + [398] = {.lex_state = 0}, + [399] = {.lex_state = 29}, + [400] = {.lex_state = 0}, + [401] = {.lex_state = 76}, [402] = {.lex_state = 0}, [403] = {.lex_state = 29}, - [404] = {.lex_state = 31}, + [404] = {.lex_state = 0}, [405] = {.lex_state = 0}, - [406] = {.lex_state = 31}, - [407] = {.lex_state = 29}, - [408] = {.lex_state = 29}, - [409] = {.lex_state = 0}, - [410] = {.lex_state = 29}, + [406] = {.lex_state = 29}, + [407] = {.lex_state = 0}, + [408] = {.lex_state = 33}, + [409] = {.lex_state = 29}, + [410] = {.lex_state = 0}, [411] = {.lex_state = 0}, - [412] = {.lex_state = 33}, - [413] = {.lex_state = 33}, - [414] = {.lex_state = 0}, + [412] = {.lex_state = 0}, + [413] = {.lex_state = 29}, + [414] = {.lex_state = 29}, [415] = {.lex_state = 0}, - [416] = {.lex_state = 29}, - [417] = {.lex_state = 29}, - [418] = {.lex_state = 33}, - [419] = {.lex_state = 29}, + [416] = {.lex_state = 31}, + [417] = {.lex_state = 33}, + [418] = {.lex_state = 0}, + [419] = {.lex_state = 0}, [420] = {.lex_state = 0}, - [421] = {.lex_state = 76}, - [422] = {.lex_state = 0}, + [421] = {.lex_state = 0}, + [422] = {.lex_state = 29}, [423] = {.lex_state = 0}, - [424] = {.lex_state = 29}, + [424] = {.lex_state = 0}, [425] = {.lex_state = 0}, [426] = {.lex_state = 0}, - [427] = {.lex_state = 31}, - [428] = {.lex_state = 0}, - [429] = {.lex_state = 24}, - [430] = {.lex_state = 29}, - [431] = {.lex_state = 29}, - [432] = {.lex_state = 0}, - [433] = {.lex_state = 0}, - [434] = {.lex_state = 29}, + [427] = {.lex_state = 29}, + [428] = {.lex_state = 29}, + [429] = {.lex_state = 0}, + [430] = {.lex_state = 31}, + [431] = {.lex_state = 24}, + [432] = {.lex_state = 29}, + [433] = {.lex_state = 29}, + [434] = {.lex_state = 0}, [435] = {.lex_state = 29}, - [436] = {.lex_state = 0}, - [437] = {.lex_state = 0}, - [438] = {.lex_state = 25}, + [436] = {.lex_state = 25}, + [437] = {.lex_state = 24}, + [438] = {.lex_state = 0}, [439] = {.lex_state = 0}, - [440] = {.lex_state = 0}, + [440] = {.lex_state = 25}, [441] = {.lex_state = 0}, [442] = {.lex_state = 0}, - [443] = {.lex_state = 29}, + [443] = {.lex_state = 0}, [444] = {.lex_state = 0}, - [445] = {.lex_state = 0}, - [446] = {.lex_state = 29}, - [447] = {.lex_state = 29}, + [445] = {.lex_state = 29}, + [446] = {.lex_state = 0}, + [447] = {.lex_state = 0}, [448] = {.lex_state = 0}, - [449] = {.lex_state = 29}, - [450] = {.lex_state = 0}, - [451] = {.lex_state = 29}, + [449] = {.lex_state = 25}, + [450] = {.lex_state = 76}, + [451] = {.lex_state = 0}, [452] = {.lex_state = 29}, [453] = {.lex_state = 0}, - [454] = {.lex_state = 76}, + [454] = {.lex_state = 0}, [455] = {.lex_state = 76}, - [456] = {.lex_state = 0}, - [457] = {.lex_state = 0}, - [458] = {.lex_state = 24}, - [459] = {.lex_state = 29}, - [460] = {.lex_state = 0}, + [456] = {.lex_state = 29}, + [457] = {.lex_state = 29}, + [458] = {.lex_state = 0}, + [459] = {.lex_state = 0}, + [460] = {.lex_state = 29}, [461] = {.lex_state = 0}, - [462] = {.lex_state = 0}, + [462] = {.lex_state = 29}, [463] = {.lex_state = 29}, - [464] = {.lex_state = 0}, - [465] = {.lex_state = 29}, - [466] = {.lex_state = 25}, + [464] = {.lex_state = 29}, + [465] = {.lex_state = 0}, + [466] = {.lex_state = 0}, [467] = {.lex_state = 0}, [468] = {.lex_state = 0}, - [469] = {.lex_state = 0}, - [470] = {.lex_state = 28}, - [471] = {.lex_state = 76}, + [469] = {.lex_state = 29}, + [470] = {.lex_state = 0}, + [471] = {.lex_state = 0}, [472] = {.lex_state = 0}, [473] = {.lex_state = 29}, - [474] = {.lex_state = 29}, - [475] = {.lex_state = 0}, - [476] = {.lex_state = 29}, + [474] = {.lex_state = 0}, + [475] = {.lex_state = 29}, + [476] = {.lex_state = 0}, [477] = {.lex_state = 0}, - [478] = {.lex_state = 29}, + [478] = {.lex_state = 0}, [479] = {.lex_state = 0}, - [480] = {.lex_state = 0}, - [481] = {.lex_state = 0}, + [480] = {.lex_state = 24}, + [481] = {.lex_state = 29}, [482] = {.lex_state = 29}, [483] = {.lex_state = 29}, [484] = {.lex_state = 0}, [485] = {.lex_state = 0}, - [486] = {.lex_state = 0}, - [487] = {.lex_state = 25}, + [486] = {.lex_state = 29}, + [487] = {.lex_state = 0}, [488] = {.lex_state = 0}, [489] = {.lex_state = 0}, [490] = {.lex_state = 0}, - [491] = {.lex_state = 0}, - [492] = {.lex_state = 0}, - [493] = {.lex_state = 29}, + [491] = {.lex_state = 76}, + [492] = {.lex_state = 29}, + [493] = {.lex_state = 0}, [494] = {.lex_state = 0}, [495] = {.lex_state = 0}, [496] = {.lex_state = 0}, [497] = {.lex_state = 29}, - [498] = {.lex_state = 24}, + [498] = {.lex_state = 0}, [499] = {.lex_state = 0}, - [500] = {.lex_state = 29}, - [501] = {.lex_state = 24}, - [502] = {.lex_state = 24}, - [503] = {.lex_state = 29}, - [504] = {.lex_state = 0}, - [505] = {.lex_state = 29}, - [506] = {.lex_state = 29}, - [507] = {.lex_state = 0}, - [508] = {.lex_state = 29}, + [500] = {.lex_state = 0}, + [501] = {.lex_state = 28}, + [502] = {.lex_state = 0}, + [503] = {.lex_state = 0}, + [504] = {.lex_state = 76}, + [505] = {.lex_state = 0}, + [506] = {.lex_state = 0}, + [507] = {.lex_state = 25}, + [508] = {.lex_state = 0}, [509] = {.lex_state = 0}, - [510] = {.lex_state = 0}, + [510] = {.lex_state = 24}, [511] = {.lex_state = 29}, - [512] = {.lex_state = 24}, + [512] = {.lex_state = 0}, [513] = {.lex_state = 0}, [514] = {.lex_state = 0}, - [515] = {.lex_state = 0}, - [516] = {.lex_state = 29}, + [515] = {.lex_state = 29}, + [516] = {.lex_state = 0}, [517] = {.lex_state = 0}, - [518] = {.lex_state = 29}, - [519] = {.lex_state = 29}, - [520] = {.lex_state = 24}, + [518] = {.lex_state = 0}, + [519] = {.lex_state = 24}, + [520] = {.lex_state = 0}, [521] = {.lex_state = 0}, - [522] = {.lex_state = 0}, - [523] = {.lex_state = 0}, + [522] = {.lex_state = 29}, + [523] = {.lex_state = 29}, [524] = {.lex_state = 0}, [525] = {.lex_state = 0}, - [526] = {.lex_state = 0}, - [527] = {.lex_state = 0}, + [526] = {.lex_state = 24}, + [527] = {.lex_state = 29}, [528] = {.lex_state = 0}, - [529] = {.lex_state = 25}, - [530] = {.lex_state = 0}, - [531] = {.lex_state = 0}, - [532] = {.lex_state = 76}, - [533] = {.lex_state = 76}, - [534] = {.lex_state = 76}, - [535] = {.lex_state = 24}, + [529] = {.lex_state = 29}, + [530] = {.lex_state = 76}, + [531] = {.lex_state = 76}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -5267,19 +5287,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [1] = { [sym_program] = STATE(490), [sym_namespace] = STATE(477), - [sym_use_directive] = STATE(173), - [sym__decl] = STATE(213), - [sym_class_decl] = STATE(213), - [sym_module_decl] = STATE(213), - [sym_class_alias_decl] = STATE(213), - [sym_module_alias_decl] = STATE(213), - [sym_interface_decl] = STATE(213), - [sym_type_alias_decl] = STATE(213), - [sym_const_decl] = STATE(213), - [sym_const_name] = STATE(473), - [sym_global_decl] = STATE(213), - [aux_sym_program_repeat1] = STATE(173), - [aux_sym_program_repeat2] = STATE(213), + [sym_use_directive] = STATE(185), + [sym__decl] = STATE(229), + [sym_class_decl] = STATE(229), + [sym_module_decl] = STATE(229), + [sym_class_alias_decl] = STATE(229), + [sym_module_alias_decl] = STATE(229), + [sym_interface_decl] = STATE(229), + [sym_type_alias_decl] = STATE(229), + [sym_const_decl] = STATE(229), + [sym_const_name] = STATE(475), + [sym_global_decl] = STATE(229), + [aux_sym_program_repeat1] = STATE(185), + [aux_sym_program_repeat2] = STATE(229), [ts_builtin_sym_end] = ACTIONS(5), [sym_constant] = ACTIONS(7), [anon_sym_class] = ACTIONS(9), @@ -5334,30 +5354,30 @@ static const uint16_t ts_small_parse_table[] = { STATE(7), 1, sym_rest_positional, STATE(88), 1, - sym_alias_name, + sym_class_name, STATE(89), 1, sym_interface_name, STATE(90), 1, - sym_class_name, - STATE(97), 1, + sym_alias_name, + STATE(100), 1, sym_type, - STATE(127), 1, + STATE(132), 1, sym_parameter, - STATE(283), 1, + STATE(272), 1, sym_trailing_positionals, - STATE(384), 1, + STATE(393), 1, sym_namespace, - STATE(460), 1, - sym_splat_keyword, - STATE(461), 1, + STATE(466), 1, sym_keywords, + STATE(467), 1, + sym_splat_keyword, ACTIONS(39), 2, anon_sym_true, anon_sym_false, ACTIONS(45), 2, sym_symbol_literal, sym_integer_literal, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, ACTIONS(29), 9, @@ -5370,7 +5390,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5421,23 +5441,23 @@ static const uint16_t ts_small_parse_table[] = { sym_optional_positionals, STATE(6), 1, sym_rest_positional, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(280), 1, + STATE(281), 1, sym_trailing_positionals, - STATE(313), 1, + STATE(311), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(509), 1, + STATE(484), 1, sym_keywords, ACTIONS(73), 2, anon_sym_true, @@ -5445,7 +5465,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(79), 2, sym_symbol_literal, sym_integer_literal, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, ACTIONS(63), 9, @@ -5458,7 +5478,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5507,23 +5527,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, STATE(6), 1, sym_rest_positional, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(280), 1, + STATE(281), 1, sym_trailing_positionals, - STATE(313), 1, + STATE(311), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(509), 1, + STATE(484), 1, sym_keywords, ACTIONS(73), 2, anon_sym_true, @@ -5531,7 +5551,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(79), 2, sym_symbol_literal, sym_integer_literal, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, ACTIONS(63), 9, @@ -5544,7 +5564,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5593,23 +5613,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RPAREN, STATE(8), 1, sym_rest_positional, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(278), 1, + STATE(286), 1, sym_trailing_positionals, - STATE(313), 1, + STATE(311), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(468), 1, + STATE(505), 1, sym_keywords, ACTIONS(73), 2, anon_sym_true, @@ -5617,7 +5637,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(79), 2, sym_symbol_literal, sym_integer_literal, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, ACTIONS(63), 9, @@ -5630,7 +5650,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5675,23 +5695,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(85), 1, anon_sym_RPAREN, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(278), 1, + STATE(286), 1, sym_trailing_positionals, - STATE(313), 1, + STATE(311), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(468), 1, + STATE(505), 1, sym_keywords, ACTIONS(73), 2, anon_sym_true, @@ -5699,7 +5719,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(79), 2, sym_symbol_literal, sym_integer_literal, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, ACTIONS(63), 9, @@ -5712,7 +5732,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5757,23 +5777,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET, ACTIONS(83), 1, anon_sym_QMARK2, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(280), 1, + STATE(281), 1, sym_trailing_positionals, - STATE(313), 1, + STATE(311), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(509), 1, + STATE(484), 1, sym_keywords, ACTIONS(73), 2, anon_sym_true, @@ -5781,7 +5801,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(79), 2, sym_symbol_literal, sym_integer_literal, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, ACTIONS(63), 9, @@ -5794,7 +5814,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5839,23 +5859,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(87), 1, anon_sym_RPAREN, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(267), 1, - sym_trailing_positionals, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(313), 1, + STATE(280), 1, + sym_trailing_positionals, + STATE(311), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(480), 1, + STATE(517), 1, sym_keywords, ACTIONS(73), 2, anon_sym_true, @@ -5863,7 +5883,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(79), 2, sym_symbol_literal, sym_integer_literal, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, ACTIONS(63), 9, @@ -5876,7 +5896,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5914,16 +5934,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(47), 1, anon_sym_CARET, STATE(88), 1, - sym_alias_name, + sym_class_name, STATE(89), 1, sym_interface_name, STATE(90), 1, - sym_class_name, - STATE(97), 1, + sym_alias_name, + STATE(100), 1, sym_type, - STATE(137), 1, + STATE(139), 1, sym_parameter, - STATE(384), 1, + STATE(393), 1, sym_namespace, ACTIONS(39), 2, anon_sym_true, @@ -5948,7 +5968,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -5962,84 +5982,7 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [905] = 28, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_constant, - ACTIONS(9), 1, - anon_sym_class, - ACTIONS(11), 1, - sym__scope, - ACTIONS(15), 1, - anon_sym_module, - ACTIONS(17), 1, - anon_sym_interface, - ACTIONS(19), 1, - anon_sym_type, - ACTIONS(93), 1, - sym_self, - ACTIONS(95), 1, - anon_sym_LBRACK, - ACTIONS(97), 1, - anon_sym_COLON, - ACTIONS(99), 1, - anon_sym_end, - ACTIONS(101), 1, - anon_sym_EQ, - ACTIONS(103), 1, - anon_sym_def, - ACTIONS(109), 1, - anon_sym_include, - ACTIONS(111), 1, - anon_sym_extend, - ACTIONS(113), 1, - anon_sym_prepend, - ACTIONS(115), 1, - anon_sym_alias, - STATE(15), 1, - sym_module_type_parameters, - STATE(40), 1, - aux_sym_class_decl_repeat1, - STATE(42), 1, - sym_module_self_type_binds, - STATE(319), 1, - sym_visibility, - STATE(443), 1, - sym_attribyte_type, - STATE(473), 1, - sym_const_name, - STATE(477), 1, - sym_namespace, - ACTIONS(105), 2, - anon_sym_public, - anon_sym_private, - ACTIONS(117), 2, - sym_ivar_name, - sym_cvar_name, - ACTIONS(107), 3, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - STATE(218), 17, - sym__nestable_decls, - sym_class_decl, - sym_module_decl, - sym_class_alias_decl, - sym_module_alias_decl, - sym_interface_decl, - sym_type_alias_decl, - sym_const_decl, - sym__member, - sym_ivar_member, - sym_method_member, - sym_attribute_member, - sym_visibility_member, - sym_include_member, - sym_extend_member, - sym_prepend_member, - sym_alias_member, - [1010] = 23, + [905] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, @@ -6063,16 +6006,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(47), 1, anon_sym_CARET, STATE(88), 1, - sym_alias_name, + sym_class_name, STATE(89), 1, sym_interface_name, STATE(90), 1, - sym_class_name, - STATE(97), 1, + sym_alias_name, + STATE(100), 1, sym_type, - STATE(137), 1, + STATE(139), 1, sym_parameter, - STATE(384), 1, + STATE(393), 1, sym_namespace, ACTIONS(39), 2, anon_sym_true, @@ -6080,10 +6023,10 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(45), 2, sym_symbol_literal, sym_integer_literal, - ACTIONS(121), 2, + ACTIONS(95), 2, anon_sym_STAR, sym_var_name, - ACTIONS(119), 3, + ACTIONS(93), 3, anon_sym_RPAREN, anon_sym_QMARK2, anon_sym_STAR_STAR, @@ -6097,7 +6040,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -6111,7 +6054,7 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [1105] = 28, + [1000] = 28, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -6126,51 +6069,51 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(95), 1, + ACTIONS(99), 1, anon_sym_LBRACK, + ACTIONS(101), 1, + anon_sym_COLON, ACTIONS(103), 1, + anon_sym_end, + ACTIONS(105), 1, + anon_sym_EQ, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, - ACTIONS(123), 1, - anon_sym_end, - ACTIONS(125), 1, - anon_sym_LT, - ACTIONS(127), 1, - anon_sym_EQ, - STATE(16), 1, + STATE(15), 1, sym_module_type_parameters, - STATE(43), 1, + STATE(18), 1, aux_sym_class_decl_repeat1, - STATE(44), 1, - sym_superclass, - STATE(319), 1, + STATE(40), 1, + sym_module_self_type_binds, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -6188,42 +6131,119 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, - [1210] = 23, + [1105] = 28, ACTIONS(3), 1, sym_comment, + ACTIONS(7), 1, + sym_constant, + ACTIONS(9), 1, + anon_sym_class, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, - sym_constant, - ACTIONS(59), 1, - sym_interface, - ACTIONS(61), 1, - sym_variable, - ACTIONS(65), 1, - anon_sym_singleton, - ACTIONS(69), 1, - anon_sym_LBRACK, - ACTIONS(71), 1, - anon_sym_LBRACE, - ACTIONS(75), 1, - anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(15), 1, + anon_sym_module, + ACTIONS(17), 1, + anon_sym_interface, + ACTIONS(19), 1, + anon_sym_type, + ACTIONS(97), 1, + sym_self, + ACTIONS(99), 1, + anon_sym_LBRACK, + ACTIONS(107), 1, + anon_sym_def, + ACTIONS(113), 1, + anon_sym_include, + ACTIONS(115), 1, + anon_sym_extend, + ACTIONS(117), 1, + anon_sym_prepend, + ACTIONS(119), 1, + anon_sym_alias, + ACTIONS(123), 1, + anon_sym_end, + ACTIONS(125), 1, + anon_sym_LT, + ACTIONS(127), 1, + anon_sym_EQ, + STATE(16), 1, + sym_module_type_parameters, + STATE(19), 1, + aux_sym_class_decl_repeat1, + STATE(43), 1, + sym_superclass, + STATE(314), 1, + sym_visibility, + STATE(427), 1, + sym_attribyte_type, + STATE(475), 1, + sym_const_name, + STATE(477), 1, + sym_namespace, + ACTIONS(109), 2, + anon_sym_public, + anon_sym_private, + ACTIONS(121), 2, + sym_ivar_name, + sym_cvar_name, + ACTIONS(111), 3, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + STATE(213), 17, + sym__nestable_decls, + sym_class_decl, + sym_module_decl, + sym_class_alias_decl, + sym_module_alias_decl, + sym_interface_decl, + sym_type_alias_decl, + sym_const_decl, + sym__member, + sym_ivar_member, + sym_method_member, + sym_attribute_member, + sym_visibility_member, + sym_include_member, + sym_extend_member, + sym_prepend_member, + sym_alias_member, + [1210] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(57), 1, + sym_constant, + ACTIONS(59), 1, + sym_interface, + ACTIONS(61), 1, + sym_variable, + ACTIONS(65), 1, + anon_sym_singleton, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_LBRACE, + ACTIONS(75), 1, + anon_sym_DQUOTE, + ACTIONS(77), 1, anon_sym_SQUOTE, ACTIONS(81), 1, anon_sym_CARET, ACTIONS(131), 1, sym_var_name, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(332), 1, + STATE(335), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, ACTIONS(73), 2, anon_sym_true, @@ -6245,7 +6265,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -6284,17 +6304,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET, ACTIONS(135), 1, sym_var_name, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(276), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(271), 1, sym_type, - STATE(332), 1, + STATE(335), 1, sym_parameter, - STATE(406), 1, + STATE(416), 1, sym_namespace, ACTIONS(73), 2, anon_sym_true, @@ -6316,7 +6336,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -6345,45 +6365,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, - sym_self, ACTIONS(97), 1, + sym_self, + ACTIONS(101), 1, anon_sym_COLON, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, ACTIONS(137), 1, anon_sym_end, - STATE(18), 1, - sym_module_self_type_binds, - STATE(25), 1, + STATE(38), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(41), 1, + sym_module_self_type_binds, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -6416,45 +6436,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, ACTIONS(125), 1, anon_sym_LT, ACTIONS(139), 1, anon_sym_end, - STATE(20), 1, - sym_superclass, - STATE(21), 1, + STATE(31), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(32), 1, + sym_superclass, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -6498,16 +6518,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(141), 1, sym_var_name, STATE(88), 1, - sym_alias_name, + sym_class_name, STATE(89), 1, sym_interface_name, STATE(90), 1, - sym_class_name, - STATE(97), 1, + sym_alias_name, + STATE(100), 1, sym_type, - STATE(124), 1, + STATE(126), 1, sym_parameter, - STATE(384), 1, + STATE(393), 1, sym_namespace, ACTIONS(39), 2, anon_sym_true, @@ -6525,7 +6545,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -6554,41 +6574,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, ACTIONS(143), 1, anon_sym_end, - STATE(32), 1, + STATE(35), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -6621,41 +6641,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, ACTIONS(145), 1, anon_sym_end, - STATE(31), 1, + STATE(35), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -6673,181 +6693,111 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, - [1859] = 23, + [1859] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(7), 1, - sym_constant, - ACTIONS(9), 1, - anon_sym_class, ACTIONS(11), 1, sym__scope, - ACTIONS(15), 1, - anon_sym_module, - ACTIONS(17), 1, - anon_sym_interface, - ACTIONS(19), 1, - anon_sym_type, - ACTIONS(93), 1, - sym_self, - ACTIONS(103), 1, - anon_sym_def, - ACTIONS(109), 1, - anon_sym_include, - ACTIONS(111), 1, - anon_sym_extend, - ACTIONS(113), 1, - anon_sym_prepend, - ACTIONS(115), 1, - anon_sym_alias, ACTIONS(147), 1, - anon_sym_end, - STATE(19), 1, - aux_sym_class_decl_repeat1, - STATE(319), 1, - sym_visibility, - STATE(443), 1, - sym_attribyte_type, - STATE(473), 1, - sym_const_name, - STATE(477), 1, + sym_constant, + ACTIONS(149), 1, + sym_interface, + ACTIONS(151), 1, + sym_variable, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, + anon_sym_LBRACK, + ACTIONS(159), 1, + anon_sym_RBRACK, + ACTIONS(161), 1, + anon_sym_LBRACE, + ACTIONS(165), 1, + anon_sym_DQUOTE, + ACTIONS(167), 1, + anon_sym_SQUOTE, + ACTIONS(169), 1, + anon_sym_CARET, + STATE(128), 1, + sym_class_name, + STATE(129), 1, + sym_interface_name, + STATE(130), 1, + sym_alias_name, + STATE(334), 1, + sym_type, + STATE(386), 1, sym_namespace, - ACTIONS(105), 2, - anon_sym_public, - anon_sym_private, - ACTIONS(117), 2, - sym_ivar_name, - sym_cvar_name, - ACTIONS(107), 3, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - STATE(218), 17, - sym__nestable_decls, - sym_class_decl, - sym_module_decl, - sym_class_alias_decl, - sym_module_alias_decl, - sym_interface_decl, - sym_type_alias_decl, - sym_const_decl, - sym__member, - sym_ivar_member, - sym_method_member, - sym_attribute_member, - sym_visibility_member, - sym_include_member, - sym_extend_member, - sym_prepend_member, - sym_alias_member, - [1949] = 23, + ACTIONS(163), 4, + anon_sym_true, + anon_sym_false, + sym_symbol_literal, + sym_integer_literal, + ACTIONS(153), 9, + sym_self, + anon_sym_instance, + anon_sym_class, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + STATE(165), 13, + sym_builtin_type, + sym_class_type, + sym_interface_type, + sym_alias_type, + sym_singleton_type, + sym_union_type, + sym_intersection_type, + sym_optional_type, + sym_tuple_type, + sym_record_type, + sym__literal, + sym_string_literal, + sym_proc, + [1943] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(7), 1, - sym_constant, - ACTIONS(9), 1, - anon_sym_class, ACTIONS(11), 1, sym__scope, - ACTIONS(15), 1, - anon_sym_module, - ACTIONS(17), 1, - anon_sym_interface, - ACTIONS(19), 1, - anon_sym_type, - ACTIONS(93), 1, - sym_self, - ACTIONS(103), 1, - anon_sym_def, - ACTIONS(109), 1, - anon_sym_include, - ACTIONS(111), 1, - anon_sym_extend, - ACTIONS(113), 1, - anon_sym_prepend, - ACTIONS(115), 1, - anon_sym_alias, - ACTIONS(149), 1, - anon_sym_end, - STATE(31), 1, - aux_sym_class_decl_repeat1, - STATE(319), 1, - sym_visibility, - STATE(443), 1, - sym_attribyte_type, - STATE(473), 1, - sym_const_name, - STATE(477), 1, - sym_namespace, - ACTIONS(105), 2, - anon_sym_public, - anon_sym_private, - ACTIONS(117), 2, - sym_ivar_name, - sym_cvar_name, - ACTIONS(107), 3, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - STATE(218), 17, - sym__nestable_decls, - sym_class_decl, - sym_module_decl, - sym_class_alias_decl, - sym_module_alias_decl, - sym_interface_decl, - sym_type_alias_decl, - sym_const_decl, - sym__member, - sym_ivar_member, - sym_method_member, - sym_attribute_member, - sym_visibility_member, - sym_include_member, - sym_extend_member, - sym_prepend_member, - sym_alias_member, - [2039] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(163), 1, - anon_sym_RBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + ACTIONS(171), 1, + anon_sym_RBRACK, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(335), 1, + STATE(334), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -6857,7 +6807,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -6871,47 +6821,47 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2123] = 20, + [2027] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(59), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(61), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(69), 1, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(71), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(75), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(81), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(177), 1, - anon_sym_singleton, - STATE(253), 1, + ACTIONS(173), 1, + anon_sym_RBRACK, + STATE(128), 1, + sym_class_name, + STATE(129), 1, sym_interface_name, - STATE(256), 1, + STATE(130), 1, sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(321), 1, + STATE(325), 1, sym_type, - STATE(406), 1, + STATE(386), 1, sym_namespace, - STATE(426), 1, - sym_parameter, - ACTIONS(79), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(175), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -6921,7 +6871,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -6935,42 +6885,42 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2207] = 20, + [2111] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, + ACTIONS(23), 1, sym_constant, - ACTIONS(59), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(61), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(69), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(71), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(75), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(81), 1, + ACTIONS(47), 1, anon_sym_CARET, ACTIONS(177), 1, anon_sym_singleton, - STATE(253), 1, + STATE(88), 1, + sym_class_name, + STATE(89), 1, sym_interface_name, - STATE(256), 1, + STATE(90), 1, sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(321), 1, + STATE(100), 1, sym_type, - STATE(406), 1, - sym_namespace, - STATE(444), 1, + STATE(139), 1, sym_parameter, - ACTIONS(79), 4, + STATE(393), 1, + sym_namespace, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, @@ -6985,7 +6935,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -6999,114 +6949,47 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2291] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_constant, - ACTIONS(9), 1, - anon_sym_class, - ACTIONS(11), 1, - sym__scope, - ACTIONS(15), 1, - anon_sym_module, - ACTIONS(17), 1, - anon_sym_interface, - ACTIONS(19), 1, - anon_sym_type, - ACTIONS(93), 1, - sym_self, - ACTIONS(103), 1, - anon_sym_def, - ACTIONS(109), 1, - anon_sym_include, - ACTIONS(111), 1, - anon_sym_extend, - ACTIONS(113), 1, - anon_sym_prepend, - ACTIONS(115), 1, - anon_sym_alias, - ACTIONS(179), 1, - anon_sym_end, - STATE(31), 1, - aux_sym_class_decl_repeat1, - STATE(319), 1, - sym_visibility, - STATE(443), 1, - sym_attribyte_type, - STATE(473), 1, - sym_const_name, - STATE(477), 1, - sym_namespace, - ACTIONS(105), 2, - anon_sym_public, - anon_sym_private, - ACTIONS(117), 2, - sym_ivar_name, - sym_cvar_name, - ACTIONS(107), 3, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - STATE(218), 17, - sym__nestable_decls, - sym_class_decl, - sym_module_decl, - sym_class_alias_decl, - sym_module_alias_decl, - sym_interface_decl, - sym_type_alias_decl, - sym_const_decl, - sym__member, - sym_ivar_member, - sym_method_member, - sym_attribute_member, - sym_visibility_member, - sym_include_member, - sym_extend_member, - sym_prepend_member, - sym_alias_member, - [2381] = 20, + [2195] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(57), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(59), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(61), 1, sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(69), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(71), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(75), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(77), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(81), 1, anon_sym_CARET, ACTIONS(181), 1, - anon_sym_RBRACK, - STATE(130), 1, + anon_sym_singleton, + STATE(256), 1, sym_class_name, - STATE(132), 1, + STATE(257), 1, sym_interface_name, - STATE(133), 1, + STATE(258), 1, sym_alias_name, - STATE(314), 1, + STATE(313), 1, sym_type, - STATE(404), 1, + STATE(416), 1, sym_namespace, - ACTIONS(167), 4, + STATE(495), 1, + sym_parameter, + ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -7116,7 +6999,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7130,47 +7013,47 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2465] = 20, + [2279] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, ACTIONS(183), 1, anon_sym_RBRACK, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(335), 1, + STATE(334), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -7180,7 +7063,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7194,47 +7077,47 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2549] = 20, + [2363] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(57), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(59), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(61), 1, sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(69), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(71), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(75), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(77), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(81), 1, anon_sym_CARET, - ACTIONS(185), 1, - anon_sym_RBRACK, - STATE(130), 1, + ACTIONS(181), 1, + anon_sym_singleton, + STATE(256), 1, sym_class_name, - STATE(132), 1, + STATE(257), 1, sym_interface_name, - STATE(133), 1, + STATE(258), 1, sym_alias_name, - STATE(335), 1, + STATE(271), 1, sym_type, - STATE(404), 1, + STATE(335), 1, + sym_parameter, + STATE(416), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -7244,7 +7127,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7258,42 +7141,109 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2633] = 20, + [2447] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(7), 1, + sym_constant, + ACTIONS(9), 1, + anon_sym_class, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, + ACTIONS(15), 1, + anon_sym_module, + ACTIONS(17), 1, + anon_sym_interface, + ACTIONS(19), 1, + anon_sym_type, + ACTIONS(97), 1, + sym_self, + ACTIONS(107), 1, + anon_sym_def, + ACTIONS(113), 1, + anon_sym_include, + ACTIONS(115), 1, + anon_sym_extend, + ACTIONS(117), 1, + anon_sym_prepend, + ACTIONS(119), 1, + anon_sym_alias, + ACTIONS(185), 1, + anon_sym_end, + STATE(35), 1, + aux_sym_class_decl_repeat1, + STATE(314), 1, + sym_visibility, + STATE(427), 1, + sym_attribyte_type, + STATE(475), 1, + sym_const_name, + STATE(477), 1, + sym_namespace, + ACTIONS(109), 2, + anon_sym_public, + anon_sym_private, + ACTIONS(121), 2, + sym_ivar_name, + sym_cvar_name, + ACTIONS(111), 3, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + STATE(213), 17, + sym__nestable_decls, + sym_class_decl, + sym_module_decl, + sym_class_alias_decl, + sym_module_alias_decl, + sym_interface_decl, + sym_type_alias_decl, + sym_const_decl, + sym__member, + sym_ivar_member, + sym_method_member, + sym_attribute_member, + sym_visibility_member, + sym_include_member, + sym_extend_member, + sym_prepend_member, + sym_alias_member, + [2537] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(23), 1, sym_constant, - ACTIONS(59), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(61), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(69), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(71), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(75), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(81), 1, + ACTIONS(47), 1, anon_sym_CARET, ACTIONS(177), 1, anon_sym_singleton, - STATE(253), 1, + STATE(88), 1, + sym_class_name, + STATE(89), 1, sym_interface_name, - STATE(256), 1, + STATE(90), 1, sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(276), 1, + STATE(100), 1, sym_type, - STATE(332), 1, + STATE(138), 1, sym_parameter, - STATE(406), 1, + STATE(393), 1, sym_namespace, - ACTIONS(79), 4, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, @@ -7308,7 +7258,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7322,7 +7272,7 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2717] = 20, + [2621] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, @@ -7343,26 +7293,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SQUOTE, ACTIONS(47), 1, anon_sym_CARET, - ACTIONS(189), 1, + ACTIONS(177), 1, anon_sym_singleton, STATE(88), 1, - sym_alias_name, + sym_class_name, STATE(89), 1, sym_interface_name, STATE(90), 1, - sym_class_name, - STATE(97), 1, + sym_alias_name, + STATE(100), 1, sym_type, - STATE(138), 1, + STATE(166), 1, sym_parameter, - STATE(384), 1, + STATE(393), 1, sym_namespace, ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(175), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -7372,7 +7322,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7386,56 +7336,120 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [2801] = 23, + [2705] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(191), 1, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, sym_constant, - ACTIONS(194), 1, + ACTIONS(149), 1, + sym_interface, + ACTIONS(151), 1, + sym_variable, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, + anon_sym_LBRACK, + ACTIONS(161), 1, + anon_sym_LBRACE, + ACTIONS(165), 1, + anon_sym_DQUOTE, + ACTIONS(167), 1, + anon_sym_SQUOTE, + ACTIONS(169), 1, + anon_sym_CARET, + ACTIONS(187), 1, + anon_sym_RBRACK, + STATE(128), 1, + sym_class_name, + STATE(129), 1, + sym_interface_name, + STATE(130), 1, + sym_alias_name, + STATE(324), 1, + sym_type, + STATE(386), 1, + sym_namespace, + ACTIONS(163), 4, + anon_sym_true, + anon_sym_false, + sym_symbol_literal, + sym_integer_literal, + ACTIONS(153), 9, sym_self, - ACTIONS(197), 1, + anon_sym_instance, + anon_sym_class, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + STATE(165), 13, + sym_builtin_type, + sym_class_type, + sym_interface_type, + sym_alias_type, + sym_singleton_type, + sym_union_type, + sym_intersection_type, + sym_optional_type, + sym_tuple_type, + sym_record_type, + sym__literal, + sym_string_literal, + sym_proc, + [2789] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_constant, + ACTIONS(9), 1, anon_sym_class, - ACTIONS(200), 1, + ACTIONS(11), 1, sym__scope, - ACTIONS(203), 1, - anon_sym_end, - ACTIONS(205), 1, + ACTIONS(15), 1, anon_sym_module, - ACTIONS(208), 1, + ACTIONS(17), 1, anon_sym_interface, - ACTIONS(211), 1, + ACTIONS(19), 1, anon_sym_type, - ACTIONS(214), 1, + ACTIONS(97), 1, + sym_self, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(223), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(226), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(229), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(232), 1, + ACTIONS(119), 1, anon_sym_alias, - STATE(31), 1, + ACTIONS(189), 1, + anon_sym_end, + STATE(35), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(217), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(235), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(220), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -7453,7 +7467,7 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, - [2891] = 23, + [2879] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -7468,41 +7482,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, - ACTIONS(238), 1, + ACTIONS(191), 1, anon_sym_end, - STATE(31), 1, + STATE(37), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -7520,47 +7534,47 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, - [2981] = 20, + [2969] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(57), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(59), 1, sym_interface, - ACTIONS(27), 1, + ACTIONS(61), 1, sym_variable, - ACTIONS(35), 1, + ACTIONS(69), 1, anon_sym_LBRACK, - ACTIONS(37), 1, + ACTIONS(71), 1, anon_sym_LBRACE, - ACTIONS(41), 1, + ACTIONS(75), 1, anon_sym_DQUOTE, - ACTIONS(43), 1, + ACTIONS(77), 1, anon_sym_SQUOTE, - ACTIONS(47), 1, + ACTIONS(81), 1, anon_sym_CARET, - ACTIONS(189), 1, + ACTIONS(181), 1, anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, + STATE(256), 1, sym_class_name, - STATE(97), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(313), 1, sym_type, - STATE(137), 1, - sym_parameter, - STATE(384), 1, + STATE(416), 1, sym_namespace, - ACTIONS(45), 4, + STATE(458), 1, + sym_parameter, + ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -7570,7 +7584,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7584,47 +7598,47 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [3065] = 20, + [3053] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(240), 1, + ACTIONS(193), 1, anon_sym_RBRACK, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(324), 1, + STATE(334), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -7634,7 +7648,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7648,303 +7662,114 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [3149] = 20, + [3137] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, + ACTIONS(195), 1, sym_constant, - ACTIONS(153), 1, - sym_interface, - ACTIONS(155), 1, - sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, - anon_sym_LBRACK, - ACTIONS(165), 1, - anon_sym_LBRACE, - ACTIONS(169), 1, - anon_sym_DQUOTE, - ACTIONS(171), 1, - anon_sym_SQUOTE, - ACTIONS(173), 1, - anon_sym_CARET, - ACTIONS(242), 1, - anon_sym_RBRACK, - STATE(130), 1, - sym_class_name, - STATE(132), 1, - sym_interface_name, - STATE(133), 1, - sym_alias_name, - STATE(309), 1, - sym_type, - STATE(404), 1, - sym_namespace, - ACTIONS(167), 4, - anon_sym_true, - anon_sym_false, - sym_symbol_literal, - sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(198), 1, sym_self, - anon_sym_instance, + ACTIONS(201), 1, anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - STATE(157), 13, - sym_builtin_type, - sym_class_type, - sym_interface_type, - sym_alias_type, - sym_singleton_type, - sym_union_type, - sym_intersection_type, - sym_optional_type, - sym_tuple_type, - sym_record_type, - sym__literal, - sym_string_literal, - sym_proc, - [3233] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, + ACTIONS(204), 1, sym__scope, - ACTIONS(151), 1, - sym_constant, - ACTIONS(153), 1, - sym_interface, - ACTIONS(155), 1, - sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, - anon_sym_LBRACK, - ACTIONS(165), 1, - anon_sym_LBRACE, - ACTIONS(169), 1, - anon_sym_DQUOTE, - ACTIONS(171), 1, - anon_sym_SQUOTE, - ACTIONS(173), 1, - anon_sym_CARET, - ACTIONS(244), 1, - anon_sym_RBRACK, - STATE(130), 1, - sym_class_name, - STATE(132), 1, - sym_interface_name, - STATE(133), 1, - sym_alias_name, - STATE(335), 1, - sym_type, - STATE(404), 1, + ACTIONS(207), 1, + anon_sym_end, + ACTIONS(209), 1, + anon_sym_module, + ACTIONS(212), 1, + anon_sym_interface, + ACTIONS(215), 1, + anon_sym_type, + ACTIONS(218), 1, + anon_sym_def, + ACTIONS(227), 1, + anon_sym_include, + ACTIONS(230), 1, + anon_sym_extend, + ACTIONS(233), 1, + anon_sym_prepend, + ACTIONS(236), 1, + anon_sym_alias, + STATE(35), 1, + aux_sym_class_decl_repeat1, + STATE(314), 1, + sym_visibility, + STATE(427), 1, + sym_attribyte_type, + STATE(475), 1, + sym_const_name, + STATE(477), 1, sym_namespace, - ACTIONS(167), 4, - anon_sym_true, - anon_sym_false, - sym_symbol_literal, - sym_integer_literal, - ACTIONS(157), 9, - sym_self, - anon_sym_instance, - anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - STATE(157), 13, - sym_builtin_type, - sym_class_type, - sym_interface_type, - sym_alias_type, - sym_singleton_type, - sym_union_type, - sym_intersection_type, - sym_optional_type, - sym_tuple_type, - sym_record_type, - sym__literal, - sym_string_literal, - sym_proc, - [3317] = 20, + ACTIONS(221), 2, + anon_sym_public, + anon_sym_private, + ACTIONS(239), 2, + sym_ivar_name, + sym_cvar_name, + ACTIONS(224), 3, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + STATE(213), 17, + sym__nestable_decls, + sym_class_decl, + sym_module_decl, + sym_class_alias_decl, + sym_module_alias_decl, + sym_interface_decl, + sym_type_alias_decl, + sym_const_decl, + sym__member, + sym_ivar_member, + sym_method_member, + sym_attribute_member, + sym_visibility_member, + sym_include_member, + sym_extend_member, + sym_prepend_member, + sym_alias_member, + [3227] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(27), 1, - sym_variable, - ACTIONS(35), 1, - anon_sym_LBRACK, - ACTIONS(37), 1, - anon_sym_LBRACE, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(43), 1, - anon_sym_SQUOTE, - ACTIONS(47), 1, - anon_sym_CARET, - ACTIONS(189), 1, - anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, - sym_class_name, - STATE(97), 1, - sym_type, - STATE(150), 1, - sym_parameter, - STATE(384), 1, - sym_namespace, - ACTIONS(45), 4, - anon_sym_true, - anon_sym_false, - sym_symbol_literal, - sym_integer_literal, - ACTIONS(187), 9, - sym_self, - anon_sym_instance, - anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - STATE(111), 13, - sym_builtin_type, - sym_class_type, - sym_interface_type, - sym_alias_type, - sym_singleton_type, - sym_union_type, - sym_intersection_type, - sym_optional_type, - sym_tuple_type, - sym_record_type, - sym__literal, - sym_string_literal, - sym_proc, - [3401] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, ACTIONS(151), 1, - sym_constant, - ACTIONS(153), 1, - sym_interface, - ACTIONS(155), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(246), 1, + ACTIONS(242), 1, anon_sym_RBRACK, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, - sym_interface_name, - STATE(133), 1, - sym_alias_name, - STATE(335), 1, - sym_type, - STATE(404), 1, - sym_namespace, - ACTIONS(167), 4, - anon_sym_true, - anon_sym_false, - sym_symbol_literal, - sym_integer_literal, - ACTIONS(157), 9, - sym_self, - anon_sym_instance, - anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - STATE(157), 13, - sym_builtin_type, - sym_class_type, - sym_interface_type, - sym_alias_type, - sym_singleton_type, - sym_union_type, - sym_intersection_type, - sym_optional_type, - sym_tuple_type, - sym_record_type, - sym__literal, - sym_string_literal, - sym_proc, - [3485] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(57), 1, - sym_constant, - ACTIONS(59), 1, - sym_interface, - ACTIONS(61), 1, - sym_variable, - ACTIONS(69), 1, - anon_sym_LBRACK, - ACTIONS(71), 1, - anon_sym_LBRACE, - ACTIONS(75), 1, - anon_sym_DQUOTE, - ACTIONS(77), 1, - anon_sym_SQUOTE, - ACTIONS(81), 1, - anon_sym_CARET, - ACTIONS(177), 1, - anon_sym_singleton, - STATE(253), 1, + STATE(129), 1, sym_interface_name, - STATE(256), 1, - sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(321), 1, + STATE(130), 1, + sym_alias_name, + STATE(334), 1, sym_type, - STATE(406), 1, + STATE(386), 1, sym_namespace, - STATE(504), 1, - sym_parameter, - ACTIONS(79), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(175), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -7954,7 +7779,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -7968,7 +7793,7 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [3569] = 23, + [3311] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -7983,41 +7808,108 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, + ACTIONS(119), 1, + anon_sym_alias, + ACTIONS(244), 1, + anon_sym_end, + STATE(35), 1, + aux_sym_class_decl_repeat1, + STATE(314), 1, + sym_visibility, + STATE(427), 1, + sym_attribyte_type, + STATE(475), 1, + sym_const_name, + STATE(477), 1, + sym_namespace, + ACTIONS(109), 2, + anon_sym_public, + anon_sym_private, + ACTIONS(121), 2, + sym_ivar_name, + sym_cvar_name, + ACTIONS(111), 3, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + STATE(213), 17, + sym__nestable_decls, + sym_class_decl, + sym_module_decl, + sym_class_alias_decl, + sym_module_alias_decl, + sym_interface_decl, + sym_type_alias_decl, + sym_const_decl, + sym__member, + sym_ivar_member, + sym_method_member, + sym_attribute_member, + sym_visibility_member, + sym_include_member, + sym_extend_member, + sym_prepend_member, + sym_alias_member, + [3401] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_constant, + ACTIONS(9), 1, + anon_sym_class, + ACTIONS(11), 1, + sym__scope, + ACTIONS(15), 1, + anon_sym_module, + ACTIONS(17), 1, + anon_sym_interface, + ACTIONS(19), 1, + anon_sym_type, + ACTIONS(97), 1, + sym_self, + ACTIONS(107), 1, + anon_sym_def, + ACTIONS(113), 1, + anon_sym_include, ACTIONS(115), 1, + anon_sym_extend, + ACTIONS(117), 1, + anon_sym_prepend, + ACTIONS(119), 1, anon_sym_alias, - ACTIONS(248), 1, + ACTIONS(246), 1, anon_sym_end, - STATE(31), 1, + STATE(35), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -8035,47 +7927,47 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, - [3659] = 20, + [3491] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(250), 1, + ACTIONS(248), 1, anon_sym_RBRACK, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(335), 1, + STATE(334), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8085,7 +7977,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8099,7 +7991,7 @@ static const uint16_t ts_small_parse_table[] = { sym__literal, sym_string_literal, sym_proc, - [3743] = 23, + [3575] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -8114,41 +8006,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, ACTIONS(137), 1, anon_sym_end, - STATE(25), 1, + STATE(38), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -8166,7 +8058,7 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, - [3833] = 23, + [3665] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -8181,41 +8073,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, - ACTIONS(252), 1, + ACTIONS(250), 1, anon_sym_end, - STATE(31), 1, + STATE(27), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -8233,7 +8125,71 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, - [3923] = 23, + [3755] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + ACTIONS(149), 1, + sym_interface, + ACTIONS(151), 1, + sym_variable, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, + anon_sym_LBRACK, + ACTIONS(161), 1, + anon_sym_LBRACE, + ACTIONS(165), 1, + anon_sym_DQUOTE, + ACTIONS(167), 1, + anon_sym_SQUOTE, + ACTIONS(169), 1, + anon_sym_CARET, + ACTIONS(252), 1, + anon_sym_RBRACK, + STATE(128), 1, + sym_class_name, + STATE(129), 1, + sym_interface_name, + STATE(130), 1, + sym_alias_name, + STATE(307), 1, + sym_type, + STATE(386), 1, + sym_namespace, + ACTIONS(163), 4, + anon_sym_true, + anon_sym_false, + sym_symbol_literal, + sym_integer_literal, + ACTIONS(153), 9, + sym_self, + anon_sym_instance, + anon_sym_class, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + STATE(165), 13, + sym_builtin_type, + sym_class_type, + sym_interface_type, + sym_alias_type, + sym_singleton_type, + sym_union_type, + sym_intersection_type, + sym_optional_type, + sym_tuple_type, + sym_record_type, + sym__literal, + sym_string_literal, + sym_proc, + [3839] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -8248,41 +8204,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, ACTIONS(19), 1, anon_sym_type, - ACTIONS(93), 1, + ACTIONS(97), 1, sym_self, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_extend, - ACTIONS(113), 1, + ACTIONS(117), 1, anon_sym_prepend, - ACTIONS(115), 1, + ACTIONS(119), 1, anon_sym_alias, ACTIONS(139), 1, anon_sym_end, - STATE(21), 1, + STATE(31), 1, aux_sym_class_decl_repeat1, - STATE(319), 1, + STATE(314), 1, sym_visibility, - STATE(443), 1, + STATE(427), 1, sym_attribyte_type, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - ACTIONS(105), 2, + ACTIONS(109), 2, anon_sym_public, anon_sym_private, - ACTIONS(117), 2, + ACTIONS(121), 2, sym_ivar_name, sym_cvar_name, - ACTIONS(107), 3, + ACTIONS(111), 3, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - STATE(218), 17, + STATE(213), 17, sym__nestable_decls, sym_class_decl, sym_module_decl, @@ -8300,45 +8256,109 @@ static const uint16_t ts_small_parse_table[] = { sym_extend_member, sym_prepend_member, sym_alias_member, + [3929] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(57), 1, + sym_constant, + ACTIONS(59), 1, + sym_interface, + ACTIONS(61), 1, + sym_variable, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_LBRACE, + ACTIONS(75), 1, + anon_sym_DQUOTE, + ACTIONS(77), 1, + anon_sym_SQUOTE, + ACTIONS(81), 1, + anon_sym_CARET, + ACTIONS(181), 1, + anon_sym_singleton, + STATE(256), 1, + sym_class_name, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(313), 1, + sym_type, + STATE(416), 1, + sym_namespace, + STATE(434), 1, + sym_parameter, + ACTIONS(79), 4, + anon_sym_true, + anon_sym_false, + sym_symbol_literal, + sym_integer_literal, + ACTIONS(179), 9, + sym_self, + anon_sym_instance, + anon_sym_class, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + STATE(289), 13, + sym_builtin_type, + sym_class_type, + sym_interface_type, + sym_alias_type, + sym_singleton_type, + sym_union_type, + sym_intersection_type, + sym_optional_type, + sym_tuple_type, + sym_record_type, + sym__literal, + sym_string_literal, + sym_proc, [4013] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(146), 1, + STATE(168), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8348,7 +8368,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8367,40 +8387,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(23), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(47), 1, anon_sym_CARET, - STATE(130), 1, + ACTIONS(177), 1, + anon_sym_singleton, + STATE(88), 1, sym_class_name, - STATE(132), 1, + STATE(89), 1, sym_interface_name, - STATE(133), 1, + STATE(90), 1, sym_alias_name, - STATE(335), 1, + STATE(101), 1, sym_type, - STATE(404), 1, + STATE(393), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(175), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8410,7 +8430,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8429,40 +8449,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(23), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(47), 1, anon_sym_CARET, - STATE(130), 1, + ACTIONS(177), 1, + anon_sym_singleton, + STATE(88), 1, sym_class_name, - STATE(132), 1, + STATE(89), 1, sym_interface_name, - STATE(133), 1, + STATE(90), 1, sym_alias_name, - STATE(155), 1, + STATE(115), 1, sym_type, - STATE(404), 1, + STATE(393), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(175), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8472,7 +8492,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8491,40 +8511,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(177), 1, + STATE(157), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8534,7 +8554,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8553,40 +8573,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(180), 1, + STATE(315), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8596,7 +8616,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8615,40 +8635,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(185), 1, + STATE(175), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8658,7 +8678,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8677,40 +8697,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(27), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(35), 1, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(37), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(41), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(43), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(47), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(189), 1, - anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, + STATE(128), 1, sym_class_name, - STATE(113), 1, + STATE(129), 1, + sym_interface_name, + STATE(130), 1, + sym_alias_name, + STATE(174), 1, sym_type, - STATE(384), 1, + STATE(386), 1, sym_namespace, - ACTIONS(45), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8720,7 +8740,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8739,40 +8759,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(57), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(59), 1, sym_interface, - ACTIONS(27), 1, + ACTIONS(61), 1, sym_variable, - ACTIONS(35), 1, + ACTIONS(69), 1, anon_sym_LBRACK, - ACTIONS(37), 1, + ACTIONS(71), 1, anon_sym_LBRACE, - ACTIONS(41), 1, + ACTIONS(75), 1, anon_sym_DQUOTE, - ACTIONS(43), 1, + ACTIONS(77), 1, anon_sym_SQUOTE, - ACTIONS(47), 1, + ACTIONS(81), 1, anon_sym_CARET, - ACTIONS(189), 1, + ACTIONS(181), 1, anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, + STATE(256), 1, sym_class_name, - STATE(108), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(266), 1, sym_type, - STATE(384), 1, + STATE(416), 1, sym_namespace, - ACTIONS(45), 4, + ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8782,7 +8802,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8801,40 +8821,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(57), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(59), 1, sym_interface, - ACTIONS(27), 1, + ACTIONS(61), 1, sym_variable, - ACTIONS(35), 1, + ACTIONS(69), 1, anon_sym_LBRACK, - ACTIONS(37), 1, + ACTIONS(71), 1, anon_sym_LBRACE, - ACTIONS(41), 1, + ACTIONS(75), 1, anon_sym_DQUOTE, - ACTIONS(43), 1, + ACTIONS(77), 1, anon_sym_SQUOTE, - ACTIONS(47), 1, + ACTIONS(81), 1, anon_sym_CARET, - ACTIONS(189), 1, + ACTIONS(181), 1, anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, + STATE(256), 1, sym_class_name, - STATE(93), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(294), 1, sym_type, - STATE(384), 1, + STATE(416), 1, sym_namespace, - ACTIONS(45), 4, + ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8844,7 +8864,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8863,40 +8883,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(172), 1, + STATE(359), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8906,7 +8926,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -8925,40 +8945,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(318), 1, + STATE(323), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -8968,7 +8988,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9003,24 +9023,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SQUOTE, ACTIONS(81), 1, anon_sym_CARET, - ACTIONS(177), 1, + ACTIONS(181), 1, anon_sym_singleton, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(284), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(293), 1, sym_type, - STATE(406), 1, + STATE(416), 1, sym_namespace, ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(175), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9030,7 +9050,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9049,40 +9069,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(59), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(61), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(69), 1, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(71), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(75), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(81), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(177), 1, - anon_sym_singleton, - STATE(253), 1, + STATE(128), 1, + sym_class_name, + STATE(129), 1, sym_interface_name, - STATE(256), 1, + STATE(130), 1, sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(287), 1, + STATE(170), 1, sym_type, - STATE(406), 1, + STATE(386), 1, sym_namespace, - ACTIONS(79), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(175), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9092,7 +9112,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9127,24 +9147,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SQUOTE, ACTIONS(81), 1, anon_sym_CARET, - ACTIONS(177), 1, + ACTIONS(181), 1, anon_sym_singleton, - STATE(253), 1, - sym_interface_name, STATE(256), 1, - sym_alias_name, - STATE(260), 1, sym_class_name, - STATE(282), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(268), 1, sym_type, - STATE(406), 1, + STATE(416), 1, sym_namespace, ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(175), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9154,7 +9174,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9173,35 +9193,35 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, + ACTIONS(23), 1, sym_constant, - ACTIONS(59), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(61), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(69), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(71), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(75), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(81), 1, + ACTIONS(47), 1, anon_sym_CARET, ACTIONS(177), 1, anon_sym_singleton, - STATE(253), 1, + STATE(88), 1, + sym_class_name, + STATE(89), 1, sym_interface_name, - STATE(256), 1, + STATE(90), 1, sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(288), 1, + STATE(91), 1, sym_type, - STATE(406), 1, + STATE(393), 1, sym_namespace, - ACTIONS(79), 4, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, @@ -9216,7 +9236,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9235,35 +9255,35 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, + ACTIONS(23), 1, sym_constant, - ACTIONS(59), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(61), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(69), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(71), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(75), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(81), 1, + ACTIONS(47), 1, anon_sym_CARET, ACTIONS(177), 1, anon_sym_singleton, - STATE(253), 1, + STATE(88), 1, + sym_class_name, + STATE(89), 1, sym_interface_name, - STATE(256), 1, + STATE(90), 1, sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(286), 1, + STATE(92), 1, sym_type, - STATE(406), 1, + STATE(393), 1, sym_namespace, - ACTIONS(79), 4, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, @@ -9278,7 +9298,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9297,40 +9317,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(57), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(59), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(61), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(69), 1, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(71), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(75), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(77), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(81), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(177), 1, - anon_sym_singleton, - STATE(253), 1, + STATE(128), 1, + sym_class_name, + STATE(129), 1, sym_interface_name, - STATE(256), 1, + STATE(130), 1, sym_alias_name, - STATE(260), 1, - sym_class_name, - STATE(281), 1, + STATE(167), 1, sym_type, - STATE(406), 1, + STATE(386), 1, sym_namespace, - ACTIONS(79), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(175), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9340,7 +9360,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(279), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9359,40 +9379,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(23), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(47), 1, anon_sym_CARET, - STATE(130), 1, + ACTIONS(177), 1, + anon_sym_singleton, + STATE(88), 1, sym_class_name, - STATE(132), 1, + STATE(89), 1, sym_interface_name, - STATE(133), 1, + STATE(90), 1, sym_alias_name, - STATE(353), 1, + STATE(103), 1, sym_type, - STATE(404), 1, + STATE(393), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(175), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9402,7 +9422,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9421,40 +9441,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, STATE(308), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9464,7 +9484,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9483,40 +9503,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(373), 1, + STATE(173), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9526,7 +9546,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9545,40 +9565,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(148), 1, + STATE(178), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9588,7 +9608,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9607,40 +9627,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(27), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(35), 1, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(37), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(41), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(43), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(47), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(189), 1, - anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, + STATE(128), 1, sym_class_name, - STATE(110), 1, + STATE(129), 1, + sym_interface_name, + STATE(130), 1, + sym_alias_name, + STATE(182), 1, sym_type, - STATE(384), 1, + STATE(386), 1, sym_namespace, - ACTIONS(45), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9650,7 +9670,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9669,40 +9689,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(178), 1, + STATE(162), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9712,7 +9732,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9731,40 +9751,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(183), 1, + STATE(161), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9774,7 +9794,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9793,40 +9813,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(182), 1, + STATE(180), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9836,7 +9856,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9855,40 +9875,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(360), 1, + STATE(184), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9898,7 +9918,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9917,40 +9937,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(57), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(59), 1, sym_interface, - ACTIONS(27), 1, + ACTIONS(61), 1, sym_variable, - ACTIONS(35), 1, + ACTIONS(69), 1, anon_sym_LBRACK, - ACTIONS(37), 1, + ACTIONS(71), 1, anon_sym_LBRACE, - ACTIONS(41), 1, + ACTIONS(75), 1, anon_sym_DQUOTE, - ACTIONS(43), 1, + ACTIONS(77), 1, anon_sym_SQUOTE, - ACTIONS(47), 1, + ACTIONS(81), 1, anon_sym_CARET, - ACTIONS(189), 1, + ACTIONS(181), 1, anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, + STATE(256), 1, sym_class_name, - STATE(104), 1, + STATE(257), 1, + sym_interface_name, + STATE(258), 1, + sym_alias_name, + STATE(269), 1, sym_type, - STATE(384), 1, + STATE(416), 1, sym_namespace, - ACTIONS(45), 4, + ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -9960,7 +9980,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -9979,40 +9999,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(161), 1, + STATE(376), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10022,7 +10042,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10041,40 +10061,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(23), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(25), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(27), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(35), 1, + ACTIONS(155), 1, + anon_sym_singleton, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(37), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(41), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(43), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(47), 1, + ACTIONS(169), 1, anon_sym_CARET, - ACTIONS(189), 1, - anon_sym_singleton, - STATE(88), 1, - sym_alias_name, - STATE(89), 1, - sym_interface_name, - STATE(90), 1, + STATE(128), 1, sym_class_name, - STATE(115), 1, + STATE(129), 1, + sym_interface_name, + STATE(130), 1, + sym_alias_name, + STATE(334), 1, sym_type, - STATE(384), 1, + STATE(386), 1, sym_namespace, - ACTIONS(45), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(187), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10084,7 +10104,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(111), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10103,40 +10123,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(170), 1, + STATE(171), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10146,7 +10166,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10165,40 +10185,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(57), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(59), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(61), 1, sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(69), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(71), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(75), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(77), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(81), 1, anon_sym_CARET, - STATE(130), 1, + ACTIONS(181), 1, + anon_sym_singleton, + STATE(256), 1, sym_class_name, - STATE(132), 1, + STATE(257), 1, sym_interface_name, - STATE(133), 1, + STATE(258), 1, sym_alias_name, - STATE(179), 1, + STATE(270), 1, sym_type, - STATE(404), 1, + STATE(416), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(79), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(179), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10208,7 +10228,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(289), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10227,40 +10247,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(241), 1, + STATE(179), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10270,7 +10290,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10289,40 +10309,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(326), 1, + STATE(140), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10332,7 +10352,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10351,40 +10371,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(181), 1, + STATE(172), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10394,7 +10414,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10413,40 +10433,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(184), 1, + STATE(176), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10456,7 +10476,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10475,40 +10495,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(378), 1, + STATE(246), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10518,7 +10538,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10537,40 +10557,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(144), 1, + STATE(177), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10580,7 +10600,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10599,40 +10619,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(142), 1, + STATE(338), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10642,7 +10662,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10661,40 +10681,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(312), 1, + STATE(354), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10704,7 +10724,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10723,40 +10743,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(23), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(25), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(27), 1, sym_variable, - ACTIONS(159), 1, - anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(37), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(43), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(47), 1, anon_sym_CARET, - STATE(130), 1, + ACTIONS(177), 1, + anon_sym_singleton, + STATE(88), 1, sym_class_name, - STATE(132), 1, + STATE(89), 1, sym_interface_name, - STATE(133), 1, + STATE(90), 1, sym_alias_name, - STATE(174), 1, + STATE(93), 1, sym_type, - STATE(404), 1, + STATE(393), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(45), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(175), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10766,7 +10786,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(114), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10785,40 +10805,40 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - ACTIONS(155), 1, + ACTIONS(151), 1, sym_variable, - ACTIONS(159), 1, + ACTIONS(155), 1, anon_sym_singleton, - ACTIONS(161), 1, + ACTIONS(157), 1, anon_sym_LBRACK, - ACTIONS(165), 1, + ACTIONS(161), 1, anon_sym_LBRACE, - ACTIONS(169), 1, + ACTIONS(165), 1, anon_sym_DQUOTE, - ACTIONS(171), 1, + ACTIONS(167), 1, anon_sym_SQUOTE, - ACTIONS(173), 1, + ACTIONS(169), 1, anon_sym_CARET, - STATE(130), 1, + STATE(128), 1, sym_class_name, - STATE(132), 1, + STATE(129), 1, sym_interface_name, - STATE(133), 1, + STATE(130), 1, sym_alias_name, - STATE(171), 1, + STATE(330), 1, sym_type, - STATE(404), 1, + STATE(386), 1, sym_namespace, - ACTIONS(167), 4, + ACTIONS(163), 4, anon_sym_true, anon_sym_false, sym_symbol_literal, sym_integer_literal, - ACTIONS(157), 9, + ACTIONS(153), 9, sym_self, anon_sym_instance, anon_sym_class, @@ -10828,7 +10848,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_top, anon_sym_bot, anon_sym_void, - STATE(157), 13, + STATE(165), 13, sym_builtin_type, sym_class_type, sym_interface_type, @@ -10929,7 +10949,7 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(270), 1, anon_sym_LBRACK, - STATE(123), 1, + STATE(105), 1, sym_type_arguments, ACTIONS(266), 15, sym_constant, @@ -10969,7 +10989,7 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(270), 1, anon_sym_LBRACK, - STATE(122), 1, + STATE(99), 1, sym_type_arguments, ACTIONS(272), 15, sym_constant, @@ -11009,7 +11029,7 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(270), 1, anon_sym_LBRACK, - STATE(121), 1, + STATE(98), 1, sym_type_arguments, ACTIONS(276), 15, sym_constant, @@ -11044,16 +11064,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7559] = 3, + [7559] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(280), 16, + ACTIONS(284), 1, + anon_sym_QMARK, + ACTIONS(280), 15, sym_constant, sym_interface, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, - anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11081,16 +11102,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7599] = 3, + [7601] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(284), 16, + ACTIONS(284), 1, + anon_sym_QMARK, + ACTIONS(290), 1, + anon_sym_AMP, + ACTIONS(286), 14, sym_constant, sym_interface, anon_sym_RPAREN, anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11101,7 +11124,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(286), 16, + ACTIONS(288), 16, sym_variable, sym_self, anon_sym_instance, @@ -11118,16 +11141,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7639] = 6, + [7645] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(292), 1, - anon_sym_PIPE, - ACTIONS(294), 1, + ACTIONS(284), 1, + anon_sym_QMARK, + ACTIONS(290), 1, anon_sym_AMP, ACTIONS(296), 1, - anon_sym_QMARK, - ACTIONS(288), 13, + anon_sym_PIPE, + ACTIONS(292), 13, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11141,7 +11164,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(290), 16, + ACTIONS(294), 16, sym_variable, sym_self, anon_sym_instance, @@ -11158,12 +11181,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7685] = 4, + [7691] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(258), 1, - sym__scope, - ACTIONS(254), 15, + ACTIONS(298), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11173,13 +11194,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, + sym__scope, anon_sym_DQUOTE, anon_sym_SQUOTE, sym_symbol_literal, sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(256), 16, + ACTIONS(300), 16, sym_variable, sym_self, anon_sym_instance, @@ -11196,10 +11218,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7727] = 3, + [7731] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(298), 16, + ACTIONS(302), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11216,7 +11238,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(300), 16, + ACTIONS(304), 16, sym_variable, sym_self, anon_sym_instance, @@ -11233,10 +11255,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7767] = 3, + [7771] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(302), 16, + ACTIONS(306), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11253,7 +11275,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(304), 16, + ACTIONS(308), 16, sym_variable, sym_self, anon_sym_instance, @@ -11270,21 +11292,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7807] = 7, + [7811] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(292), 1, - anon_sym_PIPE, - ACTIONS(294), 1, - anon_sym_AMP, - ACTIONS(296), 1, - anon_sym_QMARK, - ACTIONS(310), 1, - sym_var_name, - ACTIONS(306), 13, + ACTIONS(310), 16, sym_constant, sym_interface, anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11295,7 +11312,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(308), 15, + ACTIONS(312), 16, sym_variable, sym_self, anon_sym_instance, @@ -11311,10 +11328,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, anon_sym_QMARK2, - [7855] = 3, + sym_var_name, + [7851] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 16, + ACTIONS(314), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11331,7 +11349,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(314), 16, + ACTIONS(316), 16, sym_variable, sym_self, anon_sym_instance, @@ -11348,10 +11366,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7895] = 3, + [7891] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(316), 16, + ACTIONS(318), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11368,7 +11386,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(318), 16, + ACTIONS(320), 16, sym_variable, sym_self, anon_sym_instance, @@ -11385,16 +11403,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [7935] = 3, + [7931] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(320), 16, + ACTIONS(284), 1, + anon_sym_QMARK, + ACTIONS(290), 1, + anon_sym_AMP, + ACTIONS(296), 1, + anon_sym_PIPE, + ACTIONS(326), 1, + sym_var_name, + ACTIONS(322), 13, sym_constant, sym_interface, anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11405,7 +11428,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(322), 16, + ACTIONS(324), 15, sym_variable, sym_self, anon_sym_instance, @@ -11421,29 +11444,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, anon_sym_QMARK2, - sym_var_name, - [7975] = 4, + [7979] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(264), 1, - sym__scope, - ACTIONS(260), 15, + ACTIONS(284), 1, + anon_sym_QMARK, + ACTIONS(290), 1, + anon_sym_AMP, + ACTIONS(296), 1, + anon_sym_PIPE, + ACTIONS(328), 13, sym_constant, sym_interface, anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, + sym__scope, anon_sym_DQUOTE, anon_sym_SQUOTE, sym_symbol_literal, sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(262), 16, + ACTIONS(330), 16, sym_variable, sym_self, anon_sym_instance, @@ -11460,10 +11484,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8017] = 3, + [8025] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(324), 16, + ACTIONS(258), 1, + sym__scope, + ACTIONS(254), 15, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11473,14 +11499,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, - sym__scope, anon_sym_DQUOTE, anon_sym_SQUOTE, sym_symbol_literal, sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(326), 16, + ACTIONS(256), 16, sym_variable, sym_self, anon_sym_instance, @@ -11497,16 +11522,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8057] = 3, + [8067] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(328), 16, + ACTIONS(284), 1, + anon_sym_QMARK, + ACTIONS(290), 1, + anon_sym_AMP, + ACTIONS(296), 1, + anon_sym_PIPE, + ACTIONS(332), 13, sym_constant, sym_interface, anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11517,7 +11545,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(330), 16, + ACTIONS(334), 16, sym_variable, sym_self, anon_sym_instance, @@ -11534,19 +11562,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8097] = 6, + [8113] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(292), 1, - anon_sym_PIPE, - ACTIONS(294), 1, - anon_sym_AMP, - ACTIONS(296), 1, - anon_sym_QMARK, - ACTIONS(332), 13, + ACTIONS(336), 16, sym_constant, sym_interface, anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11557,7 +11582,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(334), 16, + ACTIONS(338), 16, sym_variable, sym_self, anon_sym_instance, @@ -11574,10 +11599,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8143] = 3, + [8153] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(336), 16, + ACTIONS(340), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11594,7 +11619,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(338), 16, + ACTIONS(342), 16, sym_variable, sym_self, anon_sym_instance, @@ -11611,10 +11636,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8183] = 3, + [8193] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(340), 16, + ACTIONS(344), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11631,7 +11656,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(342), 16, + ACTIONS(346), 16, sym_variable, sym_self, anon_sym_instance, @@ -11648,10 +11673,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8223] = 3, + [8233] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(344), 16, + ACTIONS(348), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11668,7 +11693,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(346), 16, + ACTIONS(350), 16, sym_variable, sym_self, anon_sym_instance, @@ -11685,18 +11710,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8263] = 5, + [8273] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(294), 1, - anon_sym_AMP, - ACTIONS(296), 1, - anon_sym_QMARK, - ACTIONS(348), 14, + ACTIONS(352), 16, sym_constant, sym_interface, anon_sym_RPAREN, anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11707,7 +11730,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(350), 16, + ACTIONS(354), 16, sym_variable, sym_self, anon_sym_instance, @@ -11724,10 +11747,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8307] = 3, + [8313] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(352), 16, + ACTIONS(356), 16, sym_constant, sym_interface, anon_sym_RPAREN, @@ -11744,7 +11767,7 @@ static const uint16_t ts_small_parse_table[] = { sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(354), 16, + ACTIONS(358), 16, sym_variable, sym_self, anon_sym_instance, @@ -11761,30 +11784,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8347] = 6, + [8353] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(292), 1, - anon_sym_PIPE, - ACTIONS(294), 1, - anon_sym_AMP, - ACTIONS(296), 1, - anon_sym_QMARK, - ACTIONS(356), 13, + ACTIONS(264), 1, + sym__scope, + ACTIONS(260), 15, sym_constant, sym_interface, anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, - sym__scope, anon_sym_DQUOTE, anon_sym_SQUOTE, sym_symbol_literal, sym_integer_literal, anon_sym_CARET, anon_sym_STAR_STAR, - ACTIONS(358), 16, + ACTIONS(262), 16, sym_variable, sym_self, anon_sym_instance, @@ -11801,7 +11822,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8393] = 3, + [8395] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(360), 16, @@ -11838,7 +11859,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8433] = 3, + [8435] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(364), 16, @@ -11875,17 +11896,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8473] = 4, + [8475] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(296), 1, - anon_sym_QMARK, - ACTIONS(368), 15, + ACTIONS(368), 16, sym_constant, sym_interface, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, + anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_LBRACE, @@ -11953,12 +11973,12 @@ static const uint16_t ts_small_parse_table[] = { [8555] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(292), 1, - anon_sym_PIPE, - ACTIONS(294), 1, + ACTIONS(284), 1, + anon_sym_QMARK, + ACTIONS(290), 1, anon_sym_AMP, ACTIONS(296), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(376), 13, sym_constant, sym_interface, @@ -12286,14 +12306,48 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_QMARK2, sym_var_name, - [8921] = 5, + [8921] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(416), 1, + ACTIONS(364), 30, + ts_builtin_sym_end, + sym_constant, + sym_self, + anon_sym_class, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, + anon_sym_LBRACK, anon_sym_COMMA, - STATE(131), 1, - aux_sym_optional_positionals_repeat1, - ACTIONS(412), 13, + anon_sym_RBRACK, + anon_sym_RBRACE, + sym__scope, + anon_sym_end, + anon_sym_module, + anon_sym_EQ, + anon_sym_interface, + anon_sym_type, + sym_global_name, + anon_sym_def, + anon_sym_public, + anon_sym_private, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + anon_sym_include, + anon_sym_extend, + anon_sym_prepend, + anon_sym_alias, + sym_ivar_name, + sym_cvar_name, + [8957] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(412), 1, + anon_sym_COMMA, + STATE(134), 1, + aux_sym_required_positionals_repeat1, + ACTIONS(89), 13, sym_constant, sym_interface, anon_sym_RPAREN, @@ -12307,7 +12361,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET, anon_sym_QMARK2, anon_sym_STAR_STAR, - ACTIONS(414), 15, + ACTIONS(91), 15, sym_variable, sym_self, anon_sym_instance, @@ -12323,14 +12377,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, sym_var_name, - [8963] = 5, + [8999] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(418), 1, anon_sym_COMMA, - STATE(134), 1, - aux_sym_required_positionals_repeat1, - ACTIONS(119), 13, + STATE(131), 1, + aux_sym_optional_positionals_repeat1, + ACTIONS(414), 13, sym_constant, sym_interface, anon_sym_RPAREN, @@ -12344,7 +12398,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET, anon_sym_QMARK2, anon_sym_STAR_STAR, - ACTIONS(121), 15, + ACTIONS(416), 15, sym_variable, sym_self, anon_sym_instance, @@ -12360,47 +12414,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, sym_var_name, - [9005] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(320), 30, - ts_builtin_sym_end, - sym_constant, - sym_self, - anon_sym_class, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - sym__scope, - anon_sym_end, - anon_sym_module, - anon_sym_EQ, - anon_sym_interface, - anon_sym_type, - sym_global_name, - anon_sym_def, - anon_sym_public, - anon_sym_private, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - anon_sym_include, - anon_sym_extend, - anon_sym_prepend, - anon_sym_alias, - sym_ivar_name, - sym_cvar_name, [9041] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(424), 1, anon_sym_COMMA, - STATE(125), 1, - aux_sym_required_positionals_repeat1, + STATE(127), 1, + aux_sym_optional_positionals_repeat1, ACTIONS(420), 13, sym_constant, sym_interface, @@ -12431,10 +12451,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, sym_var_name, - [9083] = 2, + [9083] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(336), 30, + ACTIONS(427), 1, + anon_sym_LBRACK, + STATE(151), 1, + sym_type_arguments, + ACTIONS(266), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -12442,14 +12466,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_AMP, anon_sym_QMARK, - anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, sym__scope, anon_sym_end, anon_sym_module, - anon_sym_EQ, anon_sym_interface, anon_sym_type, sym_global_name, @@ -12465,47 +12487,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9119] = 5, + [9123] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(430), 1, - anon_sym_COMMA, - STATE(129), 1, - aux_sym_optional_positionals_repeat1, - ACTIONS(426), 13, - sym_constant, - sym_interface, - anon_sym_RPAREN, + ACTIONS(427), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - sym__scope, - anon_sym_DQUOTE, - anon_sym_SQUOTE, - sym_symbol_literal, - sym_integer_literal, - anon_sym_CARET, - anon_sym_QMARK2, - anon_sym_STAR_STAR, - ACTIONS(428), 15, - sym_variable, + STATE(152), 1, + sym_type_arguments, + ACTIONS(272), 28, + ts_builtin_sym_end, + sym_constant, sym_self, - anon_sym_instance, anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - anon_sym_singleton, - anon_sym_true, - anon_sym_false, - anon_sym_STAR, - sym_var_name, - [9161] = 4, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + sym__scope, + anon_sym_end, + anon_sym_module, + anon_sym_interface, + anon_sym_type, + sym_global_name, + anon_sym_def, + anon_sym_public, + anon_sym_private, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + anon_sym_include, + anon_sym_extend, + anon_sym_prepend, + anon_sym_alias, + sym_ivar_name, + sym_cvar_name, + [9163] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, + ACTIONS(427), 1, anon_sym_LBRACK, STATE(153), 1, sym_type_arguments, @@ -12538,14 +12559,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9201] = 5, + [9203] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(439), 1, + ACTIONS(433), 1, anon_sym_COMMA, - STATE(129), 1, + STATE(127), 1, aux_sym_optional_positionals_repeat1, - ACTIONS(435), 13, + ACTIONS(429), 13, sym_constant, sym_interface, anon_sym_RPAREN, @@ -12559,7 +12580,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET, anon_sym_QMARK2, anon_sym_STAR_STAR, - ACTIONS(437), 15, + ACTIONS(431), 15, sym_variable, sym_self, anon_sym_instance, @@ -12575,50 +12596,47 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, sym_var_name, - [9243] = 4, + [9245] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, - anon_sym_LBRACK, - STATE(154), 1, - sym_type_arguments, - ACTIONS(272), 28, - ts_builtin_sym_end, + ACTIONS(439), 1, + anon_sym_COMMA, + STATE(125), 1, + aux_sym_required_positionals_repeat1, + ACTIONS(435), 13, sym_constant, + sym_interface, + anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_LBRACE, + sym__scope, + anon_sym_DQUOTE, + anon_sym_SQUOTE, + sym_symbol_literal, + sym_integer_literal, + anon_sym_CARET, + anon_sym_QMARK2, + anon_sym_STAR_STAR, + ACTIONS(437), 15, + sym_variable, sym_self, + anon_sym_instance, anon_sym_class, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - sym__scope, - anon_sym_end, - anon_sym_module, - anon_sym_interface, - anon_sym_type, - sym_global_name, - anon_sym_def, - anon_sym_public, - anon_sym_private, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - anon_sym_include, - anon_sym_extend, - anon_sym_prepend, - anon_sym_alias, - sym_ivar_name, - sym_cvar_name, - [9283] = 4, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + anon_sym_singleton, + anon_sym_true, + anon_sym_false, + anon_sym_STAR, + sym_var_name, + [9287] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, - anon_sym_LBRACK, - STATE(141), 1, - sym_type_arguments, - ACTIONS(266), 28, + ACTIONS(348), 30, ts_builtin_sym_end, sym_constant, sym_self, @@ -12626,12 +12644,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_AMP, anon_sym_QMARK, + anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, sym__scope, anon_sym_end, anon_sym_module, + anon_sym_EQ, anon_sym_interface, anon_sym_type, sym_global_name, @@ -12684,10 +12704,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, sym_var_name, - [9365] = 2, + [9365] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(448), 14, + sym_constant, + sym_interface, + anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_LBRACE, + sym__scope, + anon_sym_DQUOTE, + anon_sym_SQUOTE, + sym_symbol_literal, + sym_integer_literal, + anon_sym_CARET, + anon_sym_QMARK2, + anon_sym_STAR_STAR, + ACTIONS(450), 15, + sym_variable, + sym_self, + anon_sym_instance, + anon_sym_class, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + anon_sym_singleton, + anon_sym_true, + anon_sym_false, + anon_sym_STAR, + sym_var_name, + [9402] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(280), 29, + ACTIONS(360), 29, ts_builtin_sym_end, sym_constant, sym_self, @@ -12717,44 +12771,43 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9400] = 3, + [9437] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(448), 14, + ACTIONS(298), 29, + ts_builtin_sym_end, sym_constant, - sym_interface, - anon_sym_RPAREN, + sym_self, + anon_sym_class, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_LBRACE, + anon_sym_RBRACK, + anon_sym_RBRACE, sym__scope, - anon_sym_DQUOTE, - anon_sym_SQUOTE, - sym_symbol_literal, - sym_integer_literal, - anon_sym_CARET, - anon_sym_QMARK2, - anon_sym_STAR_STAR, - ACTIONS(450), 15, - sym_variable, - sym_self, - anon_sym_instance, - anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - anon_sym_singleton, - anon_sym_true, - anon_sym_false, - anon_sym_STAR, - sym_var_name, - [9437] = 3, + anon_sym_end, + anon_sym_module, + anon_sym_interface, + anon_sym_type, + sym_global_name, + anon_sym_def, + anon_sym_public, + anon_sym_private, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + anon_sym_include, + anon_sym_extend, + anon_sym_prepend, + anon_sym_alias, + sym_ivar_name, + sym_cvar_name, + [9472] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(441), 14, + ACTIONS(452), 14, sym_constant, sym_interface, anon_sym_RPAREN, @@ -12769,7 +12822,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET, anon_sym_QMARK2, anon_sym_STAR_STAR, - ACTIONS(443), 15, + ACTIONS(454), 15, sym_variable, sym_self, anon_sym_instance, @@ -12785,10 +12838,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, sym_var_name, - [9474] = 3, + [9509] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(452), 14, + ACTIONS(441), 14, sym_constant, sym_interface, anon_sym_RPAREN, @@ -12803,7 +12856,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET, anon_sym_QMARK2, anon_sym_STAR_STAR, - ACTIONS(454), 15, + ACTIONS(443), 15, sym_variable, sym_self, anon_sym_instance, @@ -12819,18 +12872,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_STAR, sym_var_name, - [9511] = 2, + [9546] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(324), 29, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(328), 25, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, - anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -12852,10 +12907,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9546] = 2, + [9586] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(372), 28, + ACTIONS(388), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -12884,10 +12939,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9580] = 2, + [9620] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(408), 28, + ACTIONS(392), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -12916,18 +12971,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9614] = 3, + [9654] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(368), 27, + ACTIONS(408), 28, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, anon_sym_PIPE, anon_sym_AMP, + anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -12949,51 +13003,51 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9650] = 2, + [9688] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(392), 28, - ts_builtin_sym_end, + ACTIONS(462), 1, + anon_sym_QMARK2, + ACTIONS(429), 12, sym_constant, + sym_interface, + anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_LBRACE, + sym__scope, + anon_sym_DQUOTE, + anon_sym_SQUOTE, + sym_symbol_literal, + sym_integer_literal, + anon_sym_CARET, + anon_sym_STAR_STAR, + ACTIONS(431), 15, + sym_variable, sym_self, + anon_sym_instance, anon_sym_class, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - sym__scope, - anon_sym_end, - anon_sym_module, - anon_sym_interface, - anon_sym_type, - sym_global_name, - anon_sym_def, - anon_sym_public, - anon_sym_private, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - anon_sym_include, - anon_sym_extend, - anon_sym_prepend, - anon_sym_alias, - sym_ivar_name, - sym_cvar_name, - [9684] = 4, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + anon_sym_singleton, + anon_sym_true, + anon_sym_false, + anon_sym_STAR, + sym_var_name, + [9726] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(348), 26, + ACTIONS(404), 28, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13015,10 +13069,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9722] = 2, + [9760] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(316), 28, + ACTIONS(400), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13047,20 +13101,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9756] = 5, + [9794] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(288), 25, + ACTIONS(396), 28, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13082,10 +13133,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9796] = 2, + [9828] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 28, + ACTIONS(310), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13114,20 +13165,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9830] = 5, + [9862] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(332), 25, + ACTIONS(352), 28, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13149,10 +13197,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9870] = 2, + [9896] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(352), 28, + ACTIONS(306), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13181,44 +13229,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9904] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(466), 1, - anon_sym_COMMA, - ACTIONS(462), 13, - sym_constant, - sym_interface, - anon_sym_RPAREN, - anon_sym_LBRACK, - anon_sym_LBRACE, - sym__scope, - anon_sym_DQUOTE, - anon_sym_SQUOTE, - sym_symbol_literal, - sym_integer_literal, - anon_sym_CARET, - anon_sym_QMARK2, - anon_sym_STAR_STAR, - ACTIONS(464), 14, - sym_variable, - sym_self, - anon_sym_instance, - anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - anon_sym_singleton, - anon_sym_true, - anon_sym_false, - sym_var_name, - [9942] = 2, + [9930] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(396), 28, + ACTIONS(340), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13247,10 +13261,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [9976] = 2, + [9964] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(302), 28, + ACTIONS(318), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13279,10 +13293,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10010] = 2, + [9998] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(400), 28, + ACTIONS(314), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13311,10 +13325,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10044] = 2, + [10032] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(404), 28, + ACTIONS(336), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13343,20 +13357,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10078] = 5, + [10066] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(376), 25, + ACTIONS(344), 28, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13378,10 +13389,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10118] = 2, + [10100] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(388), 28, + ACTIONS(384), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13410,17 +13421,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10152] = 2, + [10134] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(360), 28, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(332), 25, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13442,44 +13456,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10186] = 4, + [10174] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(472), 1, - anon_sym_QMARK2, - ACTIONS(468), 12, - sym_constant, - sym_interface, - anon_sym_RPAREN, - anon_sym_LBRACK, - anon_sym_LBRACE, - sym__scope, - anon_sym_DQUOTE, - anon_sym_SQUOTE, - sym_symbol_literal, - sym_integer_literal, - anon_sym_CARET, - anon_sym_STAR_STAR, - ACTIONS(470), 15, - sym_variable, - sym_self, - anon_sym_instance, - anon_sym_class, - anon_sym_bool, - anon_sym_untyped, - anon_sym_nil, - anon_sym_top, - anon_sym_bot, - anon_sym_void, - anon_sym_singleton, - anon_sym_true, - anon_sym_false, - anon_sym_STAR, - sym_var_name, - [10224] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(364), 28, + ACTIONS(302), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13508,10 +13488,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10258] = 2, + [10208] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(328), 28, + ACTIONS(356), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13540,20 +13520,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10292] = 5, + [10242] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(356), 25, + ACTIONS(380), 28, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13575,17 +13552,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10332] = 2, + [10276] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(344), 28, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(286), 26, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13607,17 +13586,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10366] = 2, + [10314] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(340), 28, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(376), 25, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13639,10 +13621,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10400] = 2, + [10354] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(284), 28, + ACTIONS(368), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13671,10 +13653,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10434] = 2, + [10388] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(462), 1, + anon_sym_QMARK2, + ACTIONS(464), 12, + sym_constant, + sym_interface, + anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_LBRACE, + sym__scope, + anon_sym_DQUOTE, + anon_sym_SQUOTE, + sym_symbol_literal, + sym_integer_literal, + anon_sym_CARET, + anon_sym_STAR_STAR, + ACTIONS(466), 15, + sym_variable, + sym_self, + anon_sym_instance, + anon_sym_class, + anon_sym_bool, + anon_sym_untyped, + anon_sym_nil, + anon_sym_top, + anon_sym_bot, + anon_sym_void, + anon_sym_singleton, + anon_sym_true, + anon_sym_false, + anon_sym_STAR, + sym_var_name, + [10426] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(298), 28, + ACTIONS(372), 28, ts_builtin_sym_end, sym_constant, sym_self, @@ -13703,12 +13719,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10468] = 4, + [10460] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(472), 1, - anon_sym_QMARK2, - ACTIONS(435), 12, + anon_sym_COMMA, + ACTIONS(468), 13, sym_constant, sym_interface, anon_sym_RPAREN, @@ -13720,8 +13736,9 @@ static const uint16_t ts_small_parse_table[] = { sym_symbol_literal, sym_integer_literal, anon_sym_CARET, + anon_sym_QMARK2, anon_sym_STAR_STAR, - ACTIONS(437), 15, + ACTIONS(470), 14, sym_variable, sym_self, anon_sym_instance, @@ -13735,19 +13752,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_singleton, anon_sym_true, anon_sym_false, - anon_sym_STAR, sym_var_name, - [10506] = 2, + [10498] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(384), 28, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(280), 27, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, anon_sym_PIPE, anon_sym_AMP, - anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13769,17 +13786,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10540] = 2, + [10534] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(380), 28, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(292), 25, ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, @@ -13837,11 +13857,11 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, + anon_sym_QMARK, ACTIONS(478), 22, ts_builtin_sym_end, sym_constant, @@ -13869,11 +13889,11 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, + anon_sym_QMARK, ACTIONS(480), 22, ts_builtin_sym_end, sym_constant, @@ -13901,11 +13921,11 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, + anon_sym_QMARK, ACTIONS(482), 22, ts_builtin_sym_end, sym_constant, @@ -13929,55 +13949,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10720] = 14, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_constant, - ACTIONS(9), 1, - anon_sym_class, - ACTIONS(11), 1, - sym__scope, - ACTIONS(13), 1, - anon_sym_use, - ACTIONS(15), 1, - anon_sym_module, - ACTIONS(17), 1, - anon_sym_interface, - ACTIONS(19), 1, - anon_sym_type, - ACTIONS(21), 1, - sym_global_name, - ACTIONS(484), 1, - ts_builtin_sym_end, - STATE(473), 1, - sym_const_name, - STATE(477), 1, - sym_namespace, - STATE(251), 2, - sym_use_directive, - aux_sym_program_repeat1, - STATE(228), 10, - sym__decl, - sym_class_decl, - sym_module_decl, - sym_class_alias_decl, - sym_module_alias_decl, - sym_interface_decl, - sym_type_alias_decl, - sym_const_decl, - sym_global_decl, - aux_sym_program_repeat2, - [10773] = 5, + [10720] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(486), 20, + anon_sym_QMARK, + ACTIONS(484), 20, sym_constant, sym_self, anon_sym_class, @@ -13998,16 +13979,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10808] = 5, + [10755] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, - anon_sym_LBRACK, - ACTIONS(490), 1, - anon_sym_COMMA, - STATE(211), 1, - sym_type_arguments, - ACTIONS(488), 20, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(486), 20, sym_constant, sym_self, anon_sym_class, @@ -14028,20 +14009,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10843] = 3, + [10790] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(494), 1, - anon_sym_COLON, - ACTIONS(492), 22, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(488), 20, sym_constant, sym_self, anon_sym_class, sym__scope, anon_sym_end, - anon_sym_LT, anon_sym_module, - anon_sym_EQ, anon_sym_interface, anon_sym_type, anon_sym_def, @@ -14056,16 +14039,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10874] = 5, + [10825] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(496), 20, + anon_sym_QMARK, + ACTIONS(490), 20, sym_constant, sym_self, anon_sym_class, @@ -14086,16 +14069,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10909] = 5, + [10860] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(498), 20, + anon_sym_QMARK, + ACTIONS(492), 20, sym_constant, sym_self, anon_sym_class, @@ -14116,16 +14099,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10944] = 5, + [10895] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(500), 20, + anon_sym_QMARK, + ACTIONS(494), 20, sym_constant, sym_self, anon_sym_class, @@ -14146,16 +14129,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [10979] = 5, + [10930] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(502), 20, + anon_sym_QMARK, + ACTIONS(496), 20, sym_constant, sym_self, anon_sym_class, @@ -14176,16 +14159,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11014] = 5, + [10965] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(504), 20, + anon_sym_QMARK, + ACTIONS(498), 20, sym_constant, sym_self, anon_sym_class, @@ -14206,22 +14189,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11049] = 5, + [11000] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(506), 20, + ACTIONS(502), 1, + anon_sym_COLON, + ACTIONS(500), 22, sym_constant, sym_self, anon_sym_class, sym__scope, anon_sym_end, + anon_sym_LT, anon_sym_module, + anon_sym_EQ, anon_sym_interface, anon_sym_type, anon_sym_def, @@ -14236,16 +14217,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11084] = 5, + [11031] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(508), 20, + anon_sym_QMARK, + ACTIONS(504), 20, sym_constant, sym_self, anon_sym_class, @@ -14266,22 +14247,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11119] = 5, + [11066] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(510), 20, + ACTIONS(508), 1, + anon_sym_COLON, + ACTIONS(506), 22, sym_constant, sym_self, anon_sym_class, sym__scope, anon_sym_end, + anon_sym_LT, anon_sym_module, + anon_sym_EQ, anon_sym_interface, anon_sym_type, anon_sym_def, @@ -14296,16 +14275,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11154] = 5, + [11097] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(512), 20, + anon_sym_QMARK, + ACTIONS(510), 20, sym_constant, sym_self, anon_sym_class, @@ -14326,20 +14305,61 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11189] = 3, + [11132] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_constant, + ACTIONS(9), 1, + anon_sym_class, + ACTIONS(11), 1, + sym__scope, + ACTIONS(13), 1, + anon_sym_use, + ACTIONS(15), 1, + anon_sym_module, + ACTIONS(17), 1, + anon_sym_interface, + ACTIONS(19), 1, + anon_sym_type, + ACTIONS(21), 1, + sym_global_name, + ACTIONS(512), 1, + ts_builtin_sym_end, + STATE(475), 1, + sym_const_name, + STATE(477), 1, + sym_namespace, + STATE(249), 2, + sym_use_directive, + aux_sym_program_repeat1, + STATE(227), 10, + sym__decl, + sym_class_decl, + sym_module_decl, + sym_class_alias_decl, + sym_module_alias_decl, + sym_interface_decl, + sym_type_alias_decl, + sym_const_decl, + sym_global_decl, + aux_sym_program_repeat2, + [11185] = 5, ACTIONS(3), 1, sym_comment, + ACTIONS(427), 1, + anon_sym_LBRACK, ACTIONS(516), 1, - anon_sym_COLON, - ACTIONS(514), 22, + anon_sym_COMMA, + STATE(210), 1, + sym_type_arguments, + ACTIONS(514), 20, sym_constant, sym_self, anon_sym_class, sym__scope, anon_sym_end, - anon_sym_LT, anon_sym_module, - anon_sym_EQ, anon_sym_interface, anon_sym_type, anon_sym_def, @@ -14406,14 +14426,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11276] = 4, + [11276] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, - anon_sym_LBRACK, - STATE(212), 1, - sym_type_arguments, - ACTIONS(522), 20, + ACTIONS(522), 22, + ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, @@ -14422,6 +14439,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, + sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14434,7 +14452,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11308] = 2, + [11304] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(524), 22, @@ -14460,7 +14478,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11336] = 2, + [11332] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(526), 22, @@ -14486,7 +14504,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11364] = 2, + [11360] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(528), 22, @@ -14512,14 +14530,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11392] = 4, + [11388] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, - anon_sym_LBRACK, - STATE(221), 1, - sym_type_arguments, - ACTIONS(530), 20, + ACTIONS(530), 22, + ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, @@ -14528,6 +14543,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, + sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14540,7 +14556,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11424] = 2, + [11416] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(532), 22, @@ -14566,14 +14582,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11452] = 4, + [11444] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, - anon_sym_LBRACK, - STATE(225), 1, - sym_type_arguments, - ACTIONS(534), 20, + ACTIONS(534), 22, + ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, @@ -14582,6 +14595,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, + sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14594,14 +14608,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11484] = 4, + [11472] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, - anon_sym_LBRACK, - STATE(227), 1, - sym_type_arguments, - ACTIONS(536), 20, + ACTIONS(536), 22, + ts_builtin_sym_end, sym_constant, sym_self, anon_sym_class, @@ -14610,6 +14621,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, + sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14622,7 +14634,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11516] = 2, + [11500] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(538), 22, @@ -14648,7 +14660,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11544] = 2, + [11528] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(540), 22, @@ -14674,7 +14686,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11572] = 2, + [11556] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(542), 22, @@ -14700,7 +14712,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11600] = 2, + [11584] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(544), 22, @@ -14726,7 +14738,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11628] = 2, + [11612] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(546), 22, @@ -14752,11 +14764,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11656] = 2, + [11640] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(548), 22, - ts_builtin_sym_end, + ACTIONS(427), 1, + anon_sym_LBRACK, + STATE(219), 1, + sym_type_arguments, + ACTIONS(548), 20, sym_constant, sym_self, anon_sym_class, @@ -14765,7 +14780,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, - sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14778,7 +14792,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11684] = 2, + [11672] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(550), 22, @@ -14804,7 +14818,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11712] = 2, + [11700] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(552), 22, @@ -14830,11 +14844,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11740] = 2, + [11728] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(554), 22, - ts_builtin_sym_end, + ACTIONS(427), 1, + anon_sym_LBRACK, + STATE(216), 1, + sym_type_arguments, + ACTIONS(554), 20, sym_constant, sym_self, anon_sym_class, @@ -14843,7 +14860,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, - sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14856,11 +14872,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11768] = 2, + [11760] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(556), 22, - ts_builtin_sym_end, + ACTIONS(427), 1, + anon_sym_LBRACK, + STATE(223), 1, + sym_type_arguments, + ACTIONS(556), 20, sym_constant, sym_self, anon_sym_class, @@ -14869,7 +14888,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, - sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14882,7 +14900,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11796] = 2, + [11792] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(558), 22, @@ -14908,11 +14926,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11824] = 2, + [11820] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(560), 22, - ts_builtin_sym_end, + ACTIONS(427), 1, + anon_sym_LBRACK, + STATE(225), 1, + sym_type_arguments, + ACTIONS(560), 20, sym_constant, sym_self, anon_sym_class, @@ -14921,7 +14942,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_module, anon_sym_interface, anon_sym_type, - sym_global_name, anon_sym_def, anon_sym_public, anon_sym_private, @@ -14964,7 +14984,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(3), 1, sym_comment, ACTIONS(568), 1, - anon_sym_PIPE, + anon_sym_COMMA, ACTIONS(566), 20, sym_constant, sym_self, @@ -14990,7 +15010,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(3), 1, sym_comment, ACTIONS(572), 1, - anon_sym_COMMA, + anon_sym_PIPE, ACTIONS(570), 20, sym_constant, sym_self, @@ -15036,41 +15056,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [11965] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_constant, - ACTIONS(9), 1, - anon_sym_class, - ACTIONS(11), 1, - sym__scope, - ACTIONS(15), 1, - anon_sym_module, - ACTIONS(17), 1, - anon_sym_interface, - ACTIONS(19), 1, - anon_sym_type, - ACTIONS(21), 1, - sym_global_name, - ACTIONS(484), 1, - ts_builtin_sym_end, - STATE(473), 1, - sym_const_name, - STATE(477), 1, - sym_namespace, - STATE(224), 10, - sym__decl, - sym_class_decl, - sym_module_decl, - sym_class_alias_decl, - sym_module_alias_decl, - sym_interface_decl, - sym_type_alias_decl, - sym_const_decl, - sym_global_decl, - aux_sym_program_repeat2, - [12011] = 2, + [11965] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(576), 20, @@ -15094,7 +15080,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12037] = 2, + [11991] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(578), 20, @@ -15118,7 +15104,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12063] = 2, + [12017] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(580), 20, @@ -15142,7 +15128,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12089] = 2, + [12043] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(582), 20, @@ -15166,7 +15152,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12115] = 2, + [12069] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(584), 20, @@ -15190,7 +15176,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12141] = 2, + [12095] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(586), 20, @@ -15214,7 +15200,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12167] = 2, + [12121] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(588), 20, @@ -15238,7 +15224,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12193] = 2, + [12147] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(590), 20, @@ -15262,7 +15248,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12219] = 2, + [12173] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(592), 20, @@ -15286,7 +15272,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12245] = 2, + [12199] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(594), 20, @@ -15310,44 +15296,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12271] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(596), 1, - ts_builtin_sym_end, - ACTIONS(598), 1, - sym_constant, - ACTIONS(601), 1, - anon_sym_class, - ACTIONS(604), 1, - sym__scope, - ACTIONS(607), 1, - anon_sym_module, - ACTIONS(610), 1, - anon_sym_interface, - ACTIONS(613), 1, - anon_sym_type, - ACTIONS(616), 1, - sym_global_name, - STATE(473), 1, - sym_const_name, - STATE(477), 1, - sym_namespace, - STATE(224), 10, - sym__decl, - sym_class_decl, - sym_module_decl, - sym_class_alias_decl, - sym_module_alias_decl, - sym_interface_decl, - sym_type_alias_decl, - sym_const_decl, - sym_global_decl, - aux_sym_program_repeat2, - [12317] = 2, + [12225] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(619), 20, + ACTIONS(596), 20, sym_constant, sym_self, anon_sym_class, @@ -15368,10 +15320,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12343] = 2, + [12251] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(621), 20, + ACTIONS(598), 20, sym_constant, sym_self, anon_sym_class, @@ -15392,10 +15344,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12369] = 2, + [12277] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(623), 20, + ACTIONS(600), 20, sym_constant, sym_self, anon_sym_class, @@ -15416,7 +15368,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, - [12395] = 12, + [12303] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(602), 1, + ts_builtin_sym_end, + ACTIONS(604), 1, + sym_constant, + ACTIONS(607), 1, + anon_sym_class, + ACTIONS(610), 1, + sym__scope, + ACTIONS(613), 1, + anon_sym_module, + ACTIONS(616), 1, + anon_sym_interface, + ACTIONS(619), 1, + anon_sym_type, + ACTIONS(622), 1, + sym_global_name, + STATE(475), 1, + sym_const_name, + STATE(477), 1, + sym_namespace, + STATE(226), 10, + sym__decl, + sym_class_decl, + sym_module_decl, + sym_class_alias_decl, + sym_module_alias_decl, + sym_interface_decl, + sym_type_alias_decl, + sym_const_decl, + sym_global_decl, + aux_sym_program_repeat2, + [12349] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -15435,11 +15421,11 @@ static const uint16_t ts_small_parse_table[] = { sym_global_name, ACTIONS(625), 1, ts_builtin_sym_end, - STATE(473), 1, + STATE(475), 1, sym_const_name, STATE(477), 1, sym_namespace, - STATE(224), 10, + STATE(226), 10, sym__decl, sym_class_decl, sym_module_decl, @@ -15450,10 +15436,10 @@ static const uint16_t ts_small_parse_table[] = { sym_const_decl, sym_global_decl, aux_sym_program_repeat2, - [12441] = 2, + [12395] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 20, + ACTIONS(570), 20, sym_constant, sym_self, anon_sym_class, @@ -15474,10 +15460,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, sym_ivar_name, sym_cvar_name, + [12421] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_constant, + ACTIONS(9), 1, + anon_sym_class, + ACTIONS(11), 1, + sym__scope, + ACTIONS(15), 1, + anon_sym_module, + ACTIONS(17), 1, + anon_sym_interface, + ACTIONS(19), 1, + anon_sym_type, + ACTIONS(21), 1, + sym_global_name, + ACTIONS(512), 1, + ts_builtin_sym_end, + STATE(475), 1, + sym_const_name, + STATE(477), 1, + sym_namespace, + STATE(226), 10, + sym__decl, + sym_class_decl, + sym_module_decl, + sym_class_alias_decl, + sym_module_alias_decl, + sym_interface_decl, + sym_type_alias_decl, + sym_const_decl, + sym_global_decl, + aux_sym_program_repeat2, [12467] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(629), 20, + ACTIONS(627), 20, sym_constant, sym_self, anon_sym_class, @@ -15501,7 +15521,7 @@ static const uint16_t ts_small_parse_table[] = { [12493] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 20, + ACTIONS(629), 20, sym_constant, sym_self, anon_sym_class, @@ -15525,7 +15545,7 @@ static const uint16_t ts_small_parse_table[] = { [12519] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(633), 20, + ACTIONS(631), 20, sym_constant, sym_self, anon_sym_class, @@ -15549,7 +15569,7 @@ static const uint16_t ts_small_parse_table[] = { [12545] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(566), 20, + ACTIONS(633), 20, sym_constant, sym_self, anon_sym_class, @@ -15573,37 +15593,37 @@ static const uint16_t ts_small_parse_table[] = { [12571] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(95), 1, + ACTIONS(99), 1, anon_sym_LBRACK, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, ACTIONS(635), 1, anon_sym_end, ACTIONS(639), 1, anon_sym_alias, STATE(237), 1, - sym_module_type_parameters, - STATE(238), 1, aux_sym_interface_decl_repeat1, - STATE(307), 1, + STATE(238), 1, + sym_module_type_parameters, + STATE(317), 1, sym_interface_member, - STATE(519), 1, + STATE(483), 1, sym_visibility, ACTIONS(637), 2, anon_sym_public, anon_sym_private, - STATE(317), 3, + STATE(319), 3, sym_method_member, sym_include_member, sym_alias_member, [12611] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, ACTIONS(639), 1, anon_sym_alias, @@ -15611,14 +15631,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_end, STATE(236), 1, aux_sym_interface_decl_repeat1, - STATE(307), 1, + STATE(317), 1, sym_interface_member, - STATE(519), 1, + STATE(483), 1, sym_visibility, ACTIONS(637), 2, anon_sym_public, anon_sym_private, - STATE(317), 3, + STATE(319), 3, sym_method_member, sym_include_member, sym_alias_member, @@ -15635,62 +15655,62 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_alias, STATE(236), 1, aux_sym_interface_decl_repeat1, - STATE(307), 1, + STATE(317), 1, sym_interface_member, - STATE(519), 1, + STATE(483), 1, sym_visibility, ACTIONS(648), 2, anon_sym_public, anon_sym_private, - STATE(317), 3, + STATE(319), 3, sym_method_member, sym_include_member, sym_alias_member, [12679] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, ACTIONS(639), 1, anon_sym_alias, ACTIONS(657), 1, anon_sym_end, - STATE(235), 1, + STATE(236), 1, aux_sym_interface_decl_repeat1, - STATE(307), 1, + STATE(317), 1, sym_interface_member, - STATE(519), 1, + STATE(483), 1, sym_visibility, ACTIONS(637), 2, anon_sym_public, anon_sym_private, - STATE(317), 3, + STATE(319), 3, sym_method_member, sym_include_member, sym_alias_member, [12713] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_def, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_include, ACTIONS(639), 1, anon_sym_alias, ACTIONS(659), 1, anon_sym_end, - STATE(236), 1, + STATE(235), 1, aux_sym_interface_decl_repeat1, - STATE(307), 1, + STATE(317), 1, sym_interface_member, - STATE(519), 1, + STATE(483), 1, sym_visibility, ACTIONS(637), 2, anon_sym_public, anon_sym_private, - STATE(317), 3, + STATE(319), 3, sym_method_member, sym_include_member, sym_alias_member, @@ -15709,22 +15729,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(671), 1, anon_sym_DOT_DOT_DOT, - STATE(210), 1, + STATE(211), 1, sym_method_type, - STATE(223), 1, + STATE(222), 1, sym_method_types, - STATE(302), 1, + STATE(299), 1, sym_method_type_parameters, STATE(371), 1, sym_parameters, - STATE(484), 1, + STATE(476), 1, sym_block, [12784] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(675), 1, anon_sym_COMMA, - STATE(240), 1, + STATE(245), 1, aux_sym_use_directive_repeat1, ACTIONS(673), 9, ts_builtin_sym_end, @@ -15736,25 +15756,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, anon_sym_type, sym_global_name, - [12805] = 5, + [12805] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(678), 8, - ts_builtin_sym_end, - sym_constant, - anon_sym_class, - sym__scope, - anon_sym_module, - anon_sym_interface, - anon_sym_type, - sym_global_name, - [12828] = 12, + ACTIONS(661), 1, + anon_sym_LPAREN, + ACTIONS(663), 1, + anon_sym_LBRACK, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(667), 1, + anon_sym_DASH_GT, + ACTIONS(669), 1, + anon_sym_QMARK2, + ACTIONS(671), 1, + anon_sym_DOT_DOT_DOT, + STATE(211), 1, + sym_method_type, + STATE(212), 1, + sym_method_types, + STATE(299), 1, + sym_method_type_parameters, + STATE(371), 1, + sym_parameters, + STATE(476), 1, + sym_block, + [12842] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(661), 1, @@ -15769,22 +15796,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(671), 1, anon_sym_DOT_DOT_DOT, - STATE(210), 1, + STATE(211), 1, sym_method_type, - STATE(229), 1, + STATE(214), 1, sym_method_types, - STATE(302), 1, + STATE(299), 1, sym_method_type_parameters, STATE(371), 1, sym_parameters, - STATE(484), 1, + STATE(476), 1, sym_block, - [12865] = 3, + [12879] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(675), 1, + anon_sym_COMMA, + STATE(240), 1, + aux_sym_use_directive_repeat1, + ACTIONS(677), 9, + ts_builtin_sym_end, + sym_constant, + anon_sym_class, + sym__scope, + anon_sym_use, + anon_sym_module, + anon_sym_interface, + anon_sym_type, + sym_global_name, + [12900] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(682), 1, + ACTIONS(681), 1, anon_sym_as, - ACTIONS(680), 10, + ACTIONS(679), 10, ts_builtin_sym_end, sym_constant, anon_sym_class, @@ -15795,14 +15839,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, anon_sym_type, sym_global_name, - [12884] = 4, + [12919] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(686), 1, + ACTIONS(685), 1, anon_sym_COMMA, - STATE(240), 1, + STATE(245), 1, aux_sym_use_directive_repeat1, - ACTIONS(684), 9, + ACTIONS(683), 9, ts_builtin_sym_end, sym_constant, anon_sym_class, @@ -15812,32 +15856,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, anon_sym_type, sym_global_name, - [12905] = 12, + [12940] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(661), 1, - anon_sym_LPAREN, - ACTIONS(663), 1, - anon_sym_LBRACK, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(667), 1, - anon_sym_DASH_GT, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(671), 1, - anon_sym_DOT_DOT_DOT, - STATE(210), 1, - sym_method_type, - STATE(232), 1, - sym_method_types, - STATE(302), 1, - sym_method_type_parameters, - STATE(371), 1, - sym_parameters, - STATE(484), 1, - sym_block, - [12942] = 12, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(688), 8, + ts_builtin_sym_end, + sym_constant, + anon_sym_class, + sym__scope, + anon_sym_module, + anon_sym_interface, + anon_sym_type, + sym_global_name, + [12963] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(661), 1, @@ -15852,34 +15889,57 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(671), 1, anon_sym_DOT_DOT_DOT, - STATE(210), 1, + STATE(211), 1, sym_method_type, - STATE(215), 1, + STATE(230), 1, sym_method_types, - STATE(302), 1, + STATE(299), 1, sym_method_type_parameters, STATE(371), 1, sym_parameters, - STATE(484), 1, + STATE(476), 1, sym_block, - [12979] = 4, + [13000] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(686), 1, - anon_sym_COMMA, - STATE(244), 1, - aux_sym_use_directive_repeat1, - ACTIONS(688), 9, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + ACTIONS(149), 1, + sym_interface, + ACTIONS(155), 1, + anon_sym_singleton, + STATE(128), 1, + sym_class_name, + STATE(129), 1, + sym_interface_name, + STATE(437), 1, + sym_namespace, + STATE(443), 1, + sym_bound_type, + STATE(442), 3, + sym_class_type, + sym_interface_type, + sym_singleton_type, + [13033] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(692), 1, + anon_sym_use, + STATE(249), 2, + sym_use_directive, + aux_sym_program_repeat1, + ACTIONS(690), 8, ts_builtin_sym_end, sym_constant, anon_sym_class, sym__scope, - anon_sym_use, anon_sym_module, anon_sym_interface, anon_sym_type, sym_global_name, - [13000] = 12, + [13054] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(661), 1, @@ -15894,17 +15954,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(671), 1, anon_sym_DOT_DOT_DOT, - STATE(210), 1, + STATE(211), 1, sym_method_type, - STATE(230), 1, + STATE(233), 1, sym_method_types, - STATE(302), 1, + STATE(299), 1, sym_method_type_parameters, STATE(371), 1, sym_parameters, - STATE(484), 1, + STATE(476), 1, sym_block, - [13037] = 12, + [13091] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(661), 1, @@ -15919,60 +15979,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(671), 1, anon_sym_DOT_DOT_DOT, - STATE(210), 1, + STATE(211), 1, sym_method_type, - STATE(219), 1, + STATE(231), 1, sym_method_types, - STATE(302), 1, + STATE(299), 1, sym_method_type_parameters, STATE(371), 1, sym_parameters, - STATE(484), 1, + STATE(476), 1, sym_block, - [13074] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, - sym_constant, - ACTIONS(153), 1, - sym_interface, - ACTIONS(159), 1, - anon_sym_singleton, - STATE(130), 1, - sym_class_name, - STATE(132), 1, - sym_interface_name, - STATE(441), 1, - sym_bound_type, - STATE(458), 1, - sym_namespace, - STATE(442), 3, - sym_class_type, - sym_interface_type, - sym_singleton_type, - [13107] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(692), 1, - anon_sym_use, - STATE(251), 2, - sym_use_directive, - aux_sym_program_repeat1, - ACTIONS(690), 8, - ts_builtin_sym_end, - sym_constant, - anon_sym_class, - sym__scope, - anon_sym_module, - anon_sym_interface, - anon_sym_type, - sym_global_name, [13128] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(576), 2, + ACTIONS(586), 2, anon_sym_COLON, anon_sym_LPAREN_RPAREN, ACTIONS(695), 8, @@ -15984,27 +16004,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_include, anon_sym_alias, sym_identifier, - [13146] = 5, + [13146] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(274), 1, + ACTIONS(256), 1, anon_sym_QMARK2, - ACTIONS(697), 1, - anon_sym_LBRACK, - STATE(270), 1, - sym_type_arguments, - ACTIONS(272), 7, + ACTIONS(258), 1, + sym__scope, + ACTIONS(254), 8, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, anon_sym_QMARK, + anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13168] = 2, + [13166] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(699), 10, + ACTIONS(697), 10, ts_builtin_sym_end, sym_constant, anon_sym_class, @@ -16015,14 +16034,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, anon_sym_type, sym_global_name, - [13184] = 4, + [13182] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(256), 1, + ACTIONS(262), 1, anon_sym_QMARK2, - ACTIONS(258), 1, + ACTIONS(264), 1, sym__scope, - ACTIONS(254), 8, + ACTIONS(260), 8, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16031,14 +16050,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13204] = 5, + [13202] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, anon_sym_QMARK2, - ACTIONS(697), 1, + ACTIONS(699), 1, anon_sym_LBRACK, - STATE(272), 1, + STATE(278), 1, sym_type_arguments, ACTIONS(266), 7, anon_sym_RPAREN, @@ -16048,23 +16067,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13226] = 4, + [13224] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(262), 1, + ACTIONS(274), 1, anon_sym_QMARK2, - ACTIONS(264), 1, - sym__scope, - ACTIONS(260), 8, + ACTIONS(699), 1, + anon_sym_LBRACK, + STATE(277), 1, + sym_type_arguments, + ACTIONS(272), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, anon_sym_QMARK, + anon_sym_COMMA, + anon_sym_STAR_STAR, + sym_var_name, + [13246] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(278), 1, + anon_sym_QMARK2, + ACTIONS(699), 1, anon_sym_LBRACK, + STATE(276), 1, + sym_type_arguments, + ACTIONS(276), 7, + anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13246] = 2, + [13268] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(701), 10, @@ -16078,10 +16115,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, anon_sym_type, sym_global_name, - [13262] = 2, + [13284] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(673), 10, + ACTIONS(683), 10, ts_builtin_sym_end, sym_constant, anon_sym_class, @@ -16092,29 +16129,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_interface, anon_sym_type, sym_global_name, - [13278] = 5, + [13300] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(278), 1, + ACTIONS(300), 1, anon_sym_QMARK2, - ACTIONS(697), 1, - anon_sym_LBRACK, - STATE(295), 1, - sym_type_arguments, - ACTIONS(276), 7, + ACTIONS(298), 8, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, anon_sym_QMARK, + anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13300] = 3, + [13317] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(282), 1, + ACTIONS(350), 1, anon_sym_QMARK2, - ACTIONS(280), 8, + ACTIONS(348), 8, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16123,12 +16157,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13317] = 3, + [13334] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(322), 1, + ACTIONS(362), 1, anon_sym_QMARK2, - ACTIONS(320), 8, + ACTIONS(360), 8, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16137,12 +16171,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13334] = 3, + [13351] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(326), 1, + ACTIONS(366), 1, anon_sym_QMARK2, - ACTIONS(324), 8, + ACTIONS(364), 8, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16151,89 +16185,134 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13351] = 3, + [13368] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(338), 1, + ACTIONS(390), 1, anon_sym_QMARK2, - ACTIONS(336), 8, + ACTIONS(388), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, anon_sym_QMARK, - anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13368] = 3, + [13384] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(330), 1, + anon_sym_QMARK2, + ACTIONS(703), 1, + anon_sym_PIPE, + ACTIONS(705), 1, + anon_sym_AMP, + ACTIONS(707), 1, + anon_sym_QMARK, + ACTIONS(328), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_STAR_STAR, + sym_var_name, + [13406] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(386), 1, + anon_sym_QMARK2, + ACTIONS(384), 7, + anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_QMARK, + anon_sym_COMMA, + anon_sym_STAR_STAR, + sym_var_name, + [13422] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(282), 1, + anon_sym_QMARK2, + ACTIONS(707), 1, + anon_sym_QMARK, + ACTIONS(280), 6, + anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_COMMA, + anon_sym_STAR_STAR, + sym_var_name, + [13440] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_QMARK2, + ACTIONS(705), 1, + anon_sym_AMP, + ACTIONS(707), 1, + anon_sym_QMARK, + ACTIONS(286), 5, + anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_COMMA, + anon_sym_STAR_STAR, + sym_var_name, + [13460] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(386), 1, + ACTIONS(334), 1, anon_sym_QMARK2, - ACTIONS(384), 7, - anon_sym_RPAREN, + ACTIONS(703), 1, anon_sym_PIPE, + ACTIONS(705), 1, anon_sym_AMP, + ACTIONS(707), 1, anon_sym_QMARK, + ACTIONS(332), 4, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13384] = 3, + [13482] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(398), 1, + ACTIONS(324), 1, anon_sym_QMARK2, - ACTIONS(396), 7, - anon_sym_RPAREN, + ACTIONS(703), 1, anon_sym_PIPE, + ACTIONS(705), 1, anon_sym_AMP, + ACTIONS(707), 1, anon_sym_QMARK, + ACTIONS(709), 1, + sym_var_name, + ACTIONS(322), 3, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_STAR_STAR, - sym_var_name, - [13400] = 8, + [13506] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, + ACTIONS(67), 1, + anon_sym_RPAREN, ACTIONS(83), 1, anon_sym_QMARK2, - ACTIONS(703), 1, - anon_sym_RPAREN, - ACTIONS(705), 1, + ACTIONS(711), 1, sym_var_name, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(528), 1, + STATE(484), 1, sym_keywords, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, - [13426] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(661), 1, - anon_sym_LPAREN, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(707), 1, - anon_sym_LBRACK, - ACTIONS(709), 1, - anon_sym_DASH_GT, - STATE(310), 1, - sym_parameters, - STATE(358), 1, - sym_self_type_binding, - STATE(522), 1, - sym_block, - [13454] = 3, + [13532] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(286), 1, + ACTIONS(382), 1, anon_sym_QMARK2, - ACTIONS(284), 7, + ACTIONS(380), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16241,12 +16320,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13470] = 3, + [13548] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(406), 1, + ACTIONS(304), 1, anon_sym_QMARK2, - ACTIONS(404), 7, + ACTIONS(302), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16254,31 +16333,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13486] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(661), 1, - anon_sym_LPAREN, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(707), 1, - anon_sym_LBRACK, - ACTIONS(711), 1, - anon_sym_DASH_GT, - STATE(325), 1, - sym_parameters, - STATE(343), 1, - sym_self_type_binding, - STATE(514), 1, - sym_block, - [13514] = 3, + [13564] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(410), 1, + ACTIONS(312), 1, anon_sym_QMARK2, - ACTIONS(408), 7, + ACTIONS(310), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16286,12 +16346,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13530] = 3, + [13580] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(330), 1, + ACTIONS(316), 1, anon_sym_QMARK2, - ACTIONS(328), 7, + ACTIONS(314), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16299,12 +16359,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13546] = 3, + [13596] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(346), 1, + ACTIONS(320), 1, anon_sym_QMARK2, - ACTIONS(344), 7, + ACTIONS(318), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16312,7 +16372,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13562] = 3, + [13612] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(342), 1, @@ -16325,74 +16385,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13578] = 7, + [13628] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(308), 1, + ACTIONS(354), 1, anon_sym_QMARK2, - ACTIONS(713), 1, + ACTIONS(352), 7, + anon_sym_RPAREN, anon_sym_PIPE, - ACTIONS(715), 1, anon_sym_AMP, - ACTIONS(717), 1, anon_sym_QMARK, - ACTIONS(719), 1, - sym_var_name, - ACTIONS(306), 3, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_STAR_STAR, - [13602] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(661), 1, - anon_sym_LPAREN, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(707), 1, - anon_sym_LBRACK, - ACTIONS(721), 1, - anon_sym_DASH_GT, - STATE(315), 1, - sym_parameters, - STATE(349), 1, - sym_self_type_binding, - STATE(488), 1, - sym_block, - [13630] = 8, + sym_var_name, + [13644] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(83), 1, anon_sym_QMARK2, - ACTIONS(87), 1, - anon_sym_RPAREN, - ACTIONS(705), 1, + ACTIONS(711), 1, sym_var_name, - STATE(460), 1, + ACTIONS(713), 1, + anon_sym_RPAREN, + STATE(467), 1, sym_splat_keyword, - STATE(480), 1, + STATE(500), 1, sym_keywords, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, - [13656] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(362), 1, - anon_sym_QMARK2, - ACTIONS(360), 7, - anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_QMARK, - anon_sym_COMMA, - anon_sym_STAR_STAR, - sym_var_name, - [13672] = 8, + [13670] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -16401,87 +16425,47 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, ACTIONS(85), 1, anon_sym_RPAREN, - ACTIONS(705), 1, + ACTIONS(711), 1, sym_var_name, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(468), 1, + STATE(505), 1, sym_keywords, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, - [13698] = 6, + [13696] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(290), 1, + ACTIONS(394), 1, anon_sym_QMARK2, - ACTIONS(713), 1, - anon_sym_PIPE, - ACTIONS(715), 1, - anon_sym_AMP, - ACTIONS(717), 1, - anon_sym_QMARK, - ACTIONS(288), 4, + ACTIONS(392), 7, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_STAR_STAR, - sym_var_name, - [13720] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(378), 1, - anon_sym_QMARK2, - ACTIONS(713), 1, anon_sym_PIPE, - ACTIONS(715), 1, anon_sym_AMP, - ACTIONS(717), 1, anon_sym_QMARK, - ACTIONS(376), 4, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13742] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(67), 1, - anon_sym_RPAREN, - ACTIONS(83), 1, - anon_sym_QMARK2, - ACTIONS(705), 1, - sym_var_name, - STATE(460), 1, - sym_splat_keyword, - STATE(509), 1, - sym_keywords, - STATE(464), 2, - sym_required_keywords, - sym_optional_keywords, - [13768] = 6, + [13712] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(358), 1, + ACTIONS(406), 1, anon_sym_QMARK2, - ACTIONS(713), 1, + ACTIONS(404), 7, + anon_sym_RPAREN, anon_sym_PIPE, - ACTIONS(715), 1, anon_sym_AMP, - ACTIONS(717), 1, anon_sym_QMARK, - ACTIONS(356), 4, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13790] = 3, + [13728] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(354), 1, + ACTIONS(398), 1, anon_sym_QMARK2, - ACTIONS(352), 7, + ACTIONS(396), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16489,57 +16473,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13806] = 5, + [13744] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(350), 1, + ACTIONS(661), 1, + anon_sym_LPAREN, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(669), 1, anon_sym_QMARK2, ACTIONS(715), 1, - anon_sym_AMP, + anon_sym_LBRACK, ACTIONS(717), 1, - anon_sym_QMARK, - ACTIONS(348), 5, - anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_COMMA, - anon_sym_STAR_STAR, - sym_var_name, - [13826] = 6, + anon_sym_DASH_GT, + STATE(321), 1, + sym_parameters, + STATE(360), 1, + sym_self_type_binding, + STATE(513), 1, + sym_block, + [13772] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(334), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(83), 1, anon_sym_QMARK2, - ACTIONS(713), 1, - anon_sym_PIPE, - ACTIONS(715), 1, - anon_sym_AMP, - ACTIONS(717), 1, - anon_sym_QMARK, - ACTIONS(332), 4, + ACTIONS(87), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_STAR_STAR, + ACTIONS(711), 1, sym_var_name, - [13848] = 4, + STATE(467), 1, + sym_splat_keyword, + STATE(517), 1, + sym_keywords, + STATE(468), 2, + sym_required_keywords, + sym_optional_keywords, + [13798] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(370), 1, + ACTIONS(661), 1, + anon_sym_LPAREN, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(669), 1, anon_sym_QMARK2, - ACTIONS(717), 1, - anon_sym_QMARK, - ACTIONS(368), 6, - anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_COMMA, - anon_sym_STAR_STAR, - sym_var_name, - [13866] = 3, + ACTIONS(715), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, + anon_sym_DASH_GT, + STATE(316), 1, + sym_parameters, + STATE(337), 1, + sym_self_type_binding, + STATE(471), 1, + sym_block, + [13826] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(394), 1, + ACTIONS(410), 1, anon_sym_QMARK2, - ACTIONS(392), 7, + ACTIONS(408), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16547,12 +16542,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13882] = 3, + [13842] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(318), 1, + ACTIONS(374), 1, anon_sym_QMARK2, - ACTIONS(316), 7, + ACTIONS(372), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16560,12 +16555,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13898] = 3, + [13858] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(314), 1, + ACTIONS(370), 1, anon_sym_QMARK2, - ACTIONS(312), 7, + ACTIONS(368), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16573,12 +16568,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13914] = 3, + [13874] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(661), 1, + anon_sym_LPAREN, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(669), 1, + anon_sym_QMARK2, + ACTIONS(715), 1, + anon_sym_LBRACK, + ACTIONS(721), 1, + anon_sym_DASH_GT, + STATE(320), 1, + sym_parameters, + STATE(377), 1, + sym_self_type_binding, + STATE(488), 1, + sym_block, + [13902] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(304), 1, + ACTIONS(402), 1, anon_sym_QMARK2, - ACTIONS(302), 7, + ACTIONS(400), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16586,38 +16600,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13930] = 3, + [13918] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(374), 1, + ACTIONS(378), 1, anon_sym_QMARK2, - ACTIONS(372), 7, - anon_sym_RPAREN, + ACTIONS(703), 1, anon_sym_PIPE, + ACTIONS(705), 1, anon_sym_AMP, + ACTIONS(707), 1, anon_sym_QMARK, + ACTIONS(376), 4, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [13946] = 3, + [13940] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(390), 1, + ACTIONS(294), 1, anon_sym_QMARK2, - ACTIONS(388), 7, - anon_sym_RPAREN, + ACTIONS(703), 1, anon_sym_PIPE, + ACTIONS(705), 1, anon_sym_AMP, + ACTIONS(707), 1, anon_sym_QMARK, + ACTIONS(292), 4, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, [13962] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(402), 1, + ACTIONS(358), 1, anon_sym_QMARK2, - ACTIONS(400), 7, + ACTIONS(356), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16628,9 +16648,9 @@ static const uint16_t ts_small_parse_table[] = { [13978] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(366), 1, + ACTIONS(346), 1, anon_sym_QMARK2, - ACTIONS(364), 7, + ACTIONS(344), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16641,9 +16661,9 @@ static const uint16_t ts_small_parse_table[] = { [13994] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(382), 1, + ACTIONS(338), 1, anon_sym_QMARK2, - ACTIONS(380), 7, + ACTIONS(336), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16654,9 +16674,9 @@ static const uint16_t ts_small_parse_table[] = { [14010] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(300), 1, + ACTIONS(308), 1, anon_sym_QMARK2, - ACTIONS(298), 7, + ACTIONS(306), 7, anon_sym_RPAREN, anon_sym_PIPE, anon_sym_AMP, @@ -16664,469 +16684,503 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_STAR_STAR, sym_var_name, - [14026] = 7, + [14026] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(661), 1, + anon_sym_LPAREN, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(667), 1, + anon_sym_DASH_GT, + ACTIONS(669), 1, + anon_sym_QMARK2, + STATE(209), 1, + sym_method_type, + STATE(371), 1, + sym_parameters, + STATE(476), 1, + sym_block, + [14051] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + ACTIONS(149), 1, + sym_interface, + STATE(232), 1, + sym_module_self_types, + STATE(437), 1, + sym_namespace, + STATE(186), 2, + sym_class_name, + sym_interface_name, + [14074] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + ACTIONS(149), 1, + sym_interface, + STATE(224), 1, + sym_module_self_types, + STATE(437), 1, + sym_namespace, + STATE(186), 2, + sym_class_name, + sym_interface_name, + [14097] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(83), 1, anon_sym_QMARK2, - ACTIONS(705), 1, + ACTIONS(711), 1, sym_var_name, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(526), 1, + STATE(496), 1, sym_keywords, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, - [14049] = 7, + [14120] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(723), 1, sym_constant, ACTIONS(725), 1, sym_generics_unchecked, - STATE(382), 1, + STATE(367), 1, sym_type_variable, - STATE(388), 1, + STATE(397), 1, sym_module_type_parameter, - STATE(433), 1, + STATE(441), 1, sym_generics_variance, ACTIONS(727), 2, anon_sym_out, anon_sym_in, - [14072] = 7, + [14143] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(83), 1, anon_sym_QMARK2, - ACTIONS(705), 1, + ACTIONS(711), 1, sym_var_name, - STATE(460), 1, + STATE(467), 1, sym_splat_keyword, - STATE(530), 1, + STATE(503), 1, sym_keywords, - STATE(464), 2, + STATE(468), 2, sym_required_keywords, sym_optional_keywords, - [14095] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(661), 1, - anon_sym_LPAREN, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(667), 1, - anon_sym_DASH_GT, - ACTIONS(669), 1, - anon_sym_QMARK2, - STATE(209), 1, - sym_method_type, - STATE(371), 1, - sym_parameters, - STATE(484), 1, - sym_block, - [14120] = 7, + [14166] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, STATE(217), 1, sym_module_self_types, - STATE(458), 1, + STATE(437), 1, sym_namespace, - STATE(175), 2, + STATE(186), 2, sym_class_name, sym_interface_name, - [14143] = 7, + [14189] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(723), 1, sym_constant, ACTIONS(725), 1, sym_generics_unchecked, - STATE(382), 1, + STATE(367), 1, sym_type_variable, - STATE(433), 1, + STATE(441), 1, sym_generics_variance, - STATE(440), 1, + STATE(444), 1, sym_module_type_parameter, ACTIONS(727), 2, anon_sym_out, anon_sym_in, - [14166] = 7, + [14212] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(729), 1, + anon_sym_COMMA, + ACTIONS(731), 1, + anon_sym_RBRACK, + STATE(385), 1, + aux_sym_tuple_type_repeat1, + [14234] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(733), 1, + anon_sym_COMMA, + ACTIONS(735), 1, + anon_sym_RBRACK, + STATE(423), 1, + aux_sym_tuple_type_repeat1, + [14256] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - STATE(216), 1, - sym_module_self_types, - STATE(458), 1, + STATE(437), 1, sym_namespace, - STATE(175), 2, + STATE(205), 2, sym_class_name, sym_interface_name, - [14189] = 7, + [14276] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - STATE(226), 1, - sym_module_self_types, - STATE(458), 1, + STATE(437), 1, sym_namespace, - STATE(175), 2, + STATE(206), 2, sym_class_name, sym_interface_name, - [14212] = 2, + [14296] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(729), 6, - anon_sym_end, - anon_sym_def, - anon_sym_public, - anon_sym_private, - anon_sym_include, - anon_sym_alias, - [14224] = 7, + ACTIONS(739), 1, + anon_sym_COMMA, + STATE(322), 1, + aux_sym_required_positionals_repeat1, + ACTIONS(737), 4, + anon_sym_RPAREN, + anon_sym_QMARK2, + anon_sym_STAR_STAR, + sym_var_name, + [14312] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + ACTIONS(149), 1, + sym_interface, + STATE(437), 1, + sym_namespace, + STATE(208), 2, + sym_class_name, + sym_interface_name, + [14332] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(703), 1, anon_sym_PIPE, - ACTIONS(731), 1, + ACTIONS(705), 1, + anon_sym_AMP, + ACTIONS(707), 1, + anon_sym_QMARK, + ACTIONS(741), 1, + sym_var_name, + ACTIONS(322), 2, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(733), 1, - anon_sym_RBRACK, - STATE(389), 1, - aux_sym_tuple_type_repeat1, - [14246] = 7, + [14352] = 5, + ACTIONS(743), 1, + sym_comment, + ACTIONS(745), 1, + anon_sym_def, + ACTIONS(747), 1, + aux_sym_visibility_member_token1, + STATE(432), 1, + sym_attribyte_type, + ACTIONS(749), 3, + anon_sym_attr_reader, + anon_sym_attr_writer, + anon_sym_attr_accessor, + [14370] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(735), 1, + anon_sym_QMARK, + ACTIONS(733), 1, anon_sym_COMMA, - ACTIONS(737), 1, + ACTIONS(751), 1, anon_sym_RBRACK, STATE(411), 1, aux_sym_tuple_type_repeat1, - [14268] = 7, + [14392] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(669), 1, + anon_sym_QMARK2, + ACTIONS(715), 1, + anon_sym_LBRACK, + ACTIONS(753), 1, + anon_sym_DASH_GT, + STATE(351), 1, + sym_self_type_binding, + STATE(521), 1, + sym_block, + [14414] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(755), 6, + anon_sym_end, + anon_sym_def, + anon_sym_public, + anon_sym_private, + anon_sym_include, + anon_sym_alias, + [14426] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(757), 1, + anon_sym_COMMA, + STATE(318), 1, + aux_sym_required_positionals_repeat1, + ACTIONS(441), 4, + anon_sym_RPAREN, + anon_sym_QMARK2, + anon_sym_STAR_STAR, + sym_var_name, + [14442] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(760), 6, + anon_sym_end, + anon_sym_def, + anon_sym_public, + anon_sym_private, + anon_sym_include, + anon_sym_alias, + [14454] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(669), 1, + anon_sym_QMARK2, + ACTIONS(715), 1, + anon_sym_LBRACK, + ACTIONS(762), 1, + anon_sym_DASH_GT, + STATE(378), 1, + sym_self_type_binding, + STATE(461), 1, + sym_block, + [14476] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(665), 1, anon_sym_LBRACE, ACTIONS(669), 1, anon_sym_QMARK2, - ACTIONS(707), 1, + ACTIONS(715), 1, anon_sym_LBRACK, - ACTIONS(739), 1, + ACTIONS(764), 1, anon_sym_DASH_GT, - STATE(366), 1, + STATE(352), 1, sym_self_type_binding, - STATE(467), 1, + STATE(520), 1, sym_block, - [14290] = 4, + [14498] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(741), 1, + ACTIONS(766), 1, anon_sym_COMMA, - STATE(316), 1, + STATE(318), 1, aux_sym_required_positionals_repeat1, ACTIONS(133), 4, anon_sym_RPAREN, anon_sym_QMARK2, anon_sym_STAR_STAR, sym_var_name, - [14306] = 7, + [14514] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(731), 1, + anon_sym_QMARK, + ACTIONS(733), 1, anon_sym_COMMA, - ACTIONS(743), 1, + ACTIONS(768), 1, anon_sym_RBRACK, - STATE(397), 1, + STATE(394), 1, aux_sym_tuple_type_repeat1, - [14328] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(747), 1, - anon_sym_COMMA, - STATE(311), 1, - aux_sym_required_positionals_repeat1, - ACTIONS(745), 4, - anon_sym_RPAREN, - anon_sym_QMARK2, - anon_sym_STAR_STAR, - sym_var_name, - [14344] = 7, + [14536] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(749), 1, + anon_sym_QMARK, + ACTIONS(770), 1, anon_sym_COMMA, - ACTIONS(751), 1, + ACTIONS(772), 1, anon_sym_RBRACK, - STATE(425), 1, + STATE(415), 1, aux_sym_tuple_type_repeat1, - [14366] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(707), 1, - anon_sym_LBRACK, - ACTIONS(753), 1, - anon_sym_DASH_GT, - STATE(348), 1, - sym_self_type_binding, - STATE(495), 1, - sym_block, - [14388] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(755), 1, - anon_sym_COMMA, - STATE(316), 1, - aux_sym_required_positionals_repeat1, - ACTIONS(441), 4, - anon_sym_RPAREN, - anon_sym_QMARK2, - anon_sym_STAR_STAR, - sym_var_name, - [14404] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(758), 6, - anon_sym_end, - anon_sym_def, - anon_sym_public, - anon_sym_private, - anon_sym_include, - anon_sym_alias, - [14416] = 7, + [14558] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(731), 1, + anon_sym_QMARK, + ACTIONS(774), 1, anon_sym_COMMA, - ACTIONS(760), 1, + ACTIONS(776), 1, anon_sym_RBRACK, - STATE(414), 1, + STATE(402), 1, aux_sym_tuple_type_repeat1, - [14438] = 5, - ACTIONS(762), 1, - sym_comment, - ACTIONS(764), 1, - anon_sym_def, - ACTIONS(766), 1, - aux_sym_visibility_member_token1, - STATE(449), 1, - sym_attribyte_type, - ACTIONS(768), 3, - anon_sym_attr_reader, - anon_sym_attr_writer, - anon_sym_attr_accessor, - [14456] = 6, + [14580] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, - sym_interface, - STATE(458), 1, - sym_namespace, - STATE(196), 2, + STATE(244), 1, sym_class_name, - sym_interface_name, - [14476] = 6, + STATE(260), 1, + sym_use_clause, + STATE(447), 1, + sym_namespace, + [14599] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(713), 1, - anon_sym_PIPE, - ACTIONS(715), 1, - anon_sym_AMP, - ACTIONS(717), 1, - anon_sym_QMARK, - ACTIONS(770), 1, - sym_var_name, - ACTIONS(306), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [14496] = 6, + ACTIONS(11), 1, + sym__scope, + ACTIONS(778), 1, + sym_constant, + ACTIONS(780), 1, + sym_variable, + STATE(425), 1, + sym_alias_name, + STATE(430), 1, + sym_namespace, + [14618] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, - sym_constant, - ACTIONS(153), 1, + ACTIONS(149), 1, sym_interface, - STATE(458), 1, - sym_namespace, - STATE(195), 2, - sym_class_name, + ACTIONS(778), 1, + sym_constant, + STATE(234), 1, sym_interface_name, - [14516] = 6, + STATE(431), 1, + sym_namespace, + [14637] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - ACTIONS(153), 1, - sym_interface, - STATE(458), 1, - sym_namespace, - STATE(193), 2, + STATE(243), 1, + sym_use_clause, + STATE(244), 1, sym_class_name, - sym_interface_name, - [14536] = 7, + STATE(447), 1, + sym_namespace, + [14656] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(772), 1, + anon_sym_QMARK, + ACTIONS(782), 2, anon_sym_COMMA, - ACTIONS(774), 1, - anon_sym_RBRACK, - STATE(396), 1, - aux_sym_tuple_type_repeat1, - [14558] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(707), 1, - anon_sym_LBRACK, - ACTIONS(776), 1, - anon_sym_DASH_GT, - STATE(341), 1, - sym_self_type_binding, - STATE(521), 1, - sym_block, - [14580] = 5, + anon_sym_RBRACE, + [14673] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(778), 2, + ACTIONS(448), 5, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACE, - [14597] = 3, - ACTIONS(762), 1, + anon_sym_QMARK2, + anon_sym_STAR_STAR, + sym_var_name, + [14684] = 3, + ACTIONS(743), 1, sym_comment, - ACTIONS(782), 1, + ACTIONS(786), 1, aux_sym_visibility_member_token1, - ACTIONS(780), 4, + ACTIONS(784), 4, anon_sym_def, anon_sym_attr_reader, anon_sym_attr_writer, anon_sym_attr_accessor, - [14610] = 5, + [14697] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(723), 1, sym_constant, - STATE(337), 1, + STATE(336), 1, sym_type_variable, - STATE(448), 1, + STATE(451), 1, sym_generics_variance, ACTIONS(727), 2, anon_sym_out, anon_sym_in, - [14627] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, - sym_constant, - STATE(243), 1, - sym_class_name, - STATE(247), 1, - sym_use_clause, - STATE(432), 1, - sym_namespace, - [14646] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(153), 1, - sym_interface, - ACTIONS(784), 1, - sym_constant, - STATE(234), 1, - sym_interface_name, - STATE(429), 1, - sym_namespace, - [14665] = 6, + [14714] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(784), 1, - sym_constant, - ACTIONS(786), 1, - sym_variable, - STATE(423), 1, - sym_alias_name, - STATE(427), 1, - sym_namespace, - [14684] = 2, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(788), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [14731] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(441), 5, @@ -17135,59 +17189,83 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK2, anon_sym_STAR_STAR, sym_var_name, - [14695] = 2, + [14742] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(448), 5, - anon_sym_RPAREN, + ACTIONS(792), 1, + anon_sym_LT, + STATE(439), 1, + sym_generics_bound, + ACTIONS(790), 2, anon_sym_COMMA, + anon_sym_RBRACK, + [14756] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(669), 1, anon_sym_QMARK2, - anon_sym_STAR_STAR, - sym_var_name, - [14706] = 6, + ACTIONS(753), 1, + anon_sym_DASH_GT, + STATE(521), 1, + sym_block, + [14772] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(794), 1, + anon_sym_RBRACE, + [14788] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + STATE(202), 1, + sym_class_name, + STATE(465), 1, + sym_namespace, + [14804] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - STATE(243), 1, + STATE(12), 1, sym_class_name, - STATE(259), 1, - sym_use_clause, - STATE(432), 1, + STATE(465), 1, sym_namespace, - [14725] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(788), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [14742] = 2, + [14820] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(790), 4, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_DASH_GT, - anon_sym_QMARK2, - [14752] = 4, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + STATE(465), 1, + sym_namespace, + STATE(514), 1, + sym_class_name, + [14836] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(794), 1, - anon_sym_LT, - STATE(445), 1, - sym_generics_bound, - ACTIONS(792), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [14766] = 2, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + STATE(465), 1, + sym_namespace, + STATE(502), 1, + sym_class_name, + [14852] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(796), 4, @@ -17195,18 +17273,7 @@ static const uint16_t ts_small_parse_table[] = { sym_interface, sym_variable, anon_sym_STAR, - [14776] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, - sym_constant, - STATE(469), 1, - sym_namespace, - STATE(489), 1, - sym_class_name, - [14792] = 2, + [14862] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(798), 4, @@ -17214,348 +17281,350 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACE, anon_sym_DASH_GT, anon_sym_QMARK2, - [14802] = 5, + [14872] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(800), 1, - anon_sym_DASH_GT, - STATE(525), 1, - sym_block, - [14818] = 5, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + STATE(203), 1, + sym_class_name, + STATE(465), 1, + sym_namespace, + [14888] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - STATE(10), 1, - sym_class_name, - STATE(469), 1, + STATE(465), 1, sym_namespace, - [14834] = 5, + STATE(489), 1, + sym_class_name, + [14904] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(665), 1, + ACTIONS(800), 4, + anon_sym_LBRACK, anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(776), 1, anon_sym_DASH_GT, - STATE(521), 1, - sym_block, - [14850] = 4, - ACTIONS(762), 1, + anon_sym_QMARK2, + [14914] = 5, + ACTIONS(3), 1, sym_comment, ACTIONS(802), 1, - anon_sym_SQUOTE, - STATE(363), 1, - aux_sym_string_literal_repeat2, - ACTIONS(804), 2, - sym_single_quote_string_body, - sym_escape_sequence, - [14864] = 4, - ACTIONS(762), 1, + sym_identifier, + ACTIONS(804), 1, + sym_self, + STATE(435), 1, + sym_method_name, + STATE(436), 1, + sym_singleton_method_name, + [14930] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(802), 1, + ACTIONS(806), 1, anon_sym_DQUOTE, - STATE(362), 1, + STATE(349), 1, aux_sym_string_literal_repeat1, - ACTIONS(806), 2, + ACTIONS(808), 2, sym_double_quote_string_body, sym_escape_sequence, - [14878] = 4, - ACTIONS(762), 1, - sym_comment, - ACTIONS(808), 1, - anon_sym_SQUOTE, - STATE(344), 1, - aux_sym_string_literal_repeat2, - ACTIONS(810), 2, - sym_single_quote_string_body, - sym_escape_sequence, - [14892] = 4, - ACTIONS(762), 1, + [14944] = 2, + ACTIONS(3), 1, sym_comment, - ACTIONS(808), 1, - anon_sym_DQUOTE, - STATE(345), 1, - aux_sym_string_literal_repeat1, - ACTIONS(812), 2, - sym_double_quote_string_body, - sym_escape_sequence, - [14906] = 5, + ACTIONS(811), 4, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_QMARK2, + [14954] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(665), 1, anon_sym_LBRACE, ACTIONS(669), 1, anon_sym_QMARK2, - ACTIONS(814), 1, + ACTIONS(813), 1, anon_sym_DASH_GT, - STATE(499), 1, + STATE(518), 1, sym_block, - [14922] = 5, + [14970] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(665), 1, anon_sym_LBRACE, ACTIONS(669), 1, anon_sym_QMARK2, - ACTIONS(753), 1, + ACTIONS(815), 1, anon_sym_DASH_GT, - STATE(495), 1, + STATE(524), 1, sym_block, - [14938] = 2, + [14986] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(816), 4, + ACTIONS(817), 4, sym_constant, sym_interface, sym_variable, anon_sym_STAR, - [14948] = 4, - ACTIONS(762), 1, - sym_comment, - ACTIONS(818), 1, - anon_sym_SQUOTE, - STATE(363), 1, - aux_sym_string_literal_repeat2, - ACTIONS(804), 2, - sym_single_quote_string_body, - sym_escape_sequence, - [14962] = 4, - ACTIONS(762), 1, - sym_comment, - ACTIONS(818), 1, - anon_sym_DQUOTE, - STATE(362), 1, - aux_sym_string_literal_repeat1, - ACTIONS(806), 2, - sym_double_quote_string_body, - sym_escape_sequence, - [14976] = 5, + [14996] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(820), 1, + anon_sym_QMARK, + ACTIONS(819), 1, anon_sym_RBRACK, - [14992] = 4, - ACTIONS(762), 1, - sym_comment, - ACTIONS(822), 1, - anon_sym_SQUOTE, - STATE(351), 1, - aux_sym_string_literal_repeat2, - ACTIONS(824), 2, - sym_single_quote_string_body, - sym_escape_sequence, - [15006] = 4, - ACTIONS(762), 1, - sym_comment, - ACTIONS(826), 1, - anon_sym_SQUOTE, - STATE(368), 1, - aux_sym_string_literal_repeat2, - ACTIONS(828), 2, - sym_single_quote_string_body, - sym_escape_sequence, - [15020] = 2, + [15012] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(830), 4, + ACTIONS(821), 4, anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_DASH_GT, anon_sym_QMARK2, - [15030] = 4, - ACTIONS(762), 1, + [15022] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(822), 1, - anon_sym_DQUOTE, - STATE(352), 1, - aux_sym_string_literal_repeat1, - ACTIONS(832), 2, - sym_double_quote_string_body, + ACTIONS(823), 1, + anon_sym_SQUOTE, + STATE(356), 1, + aux_sym_string_literal_repeat2, + ACTIONS(825), 2, + sym_single_quote_string_body, sym_escape_sequence, - [15044] = 5, + [15036] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(665), 1, - anon_sym_LBRACE, - ACTIONS(669), 1, - anon_sym_QMARK2, - ACTIONS(739), 1, - anon_sym_DASH_GT, - STATE(467), 1, - sym_block, - [15060] = 5, + ACTIONS(802), 1, + sym_identifier, + ACTIONS(804), 1, + sym_self, + STATE(445), 1, + sym_method_name, + STATE(449), 1, + sym_singleton_method_name, + [15052] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, sym__scope, - ACTIONS(151), 1, + ACTIONS(147), 1, sym_constant, - STATE(469), 1, - sym_namespace, - STATE(515), 1, + STATE(11), 1, sym_class_name, - [15076] = 5, + STATE(465), 1, + sym_namespace, + [15068] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(456), 1, - anon_sym_QMARK, + anon_sym_PIPE, ACTIONS(458), 1, anon_sym_AMP, ACTIONS(460), 1, - anon_sym_PIPE, - ACTIONS(834), 1, + anon_sym_QMARK, + ACTIONS(828), 1, anon_sym_RBRACE, - [15092] = 4, - ACTIONS(762), 1, + [15084] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(665), 1, + anon_sym_LBRACE, + ACTIONS(669), 1, + anon_sym_QMARK2, + ACTIONS(764), 1, + anon_sym_DASH_GT, + STATE(520), 1, + sym_block, + [15100] = 4, + ACTIONS(743), 1, + sym_comment, + ACTIONS(830), 1, + anon_sym_SQUOTE, + STATE(356), 1, + aux_sym_string_literal_repeat2, + ACTIONS(832), 2, + sym_single_quote_string_body, + sym_escape_sequence, + [15114] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(834), 4, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_QMARK2, + [15124] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym__scope, + ACTIONS(147), 1, + sym_constant, + STATE(197), 1, + sym_class_name, + STATE(465), 1, + sym_namespace, + [15140] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(826), 1, + ACTIONS(830), 1, anon_sym_DQUOTE, - STATE(369), 1, + STATE(349), 1, aux_sym_string_literal_repeat1, ACTIONS(836), 2, sym_double_quote_string_body, sym_escape_sequence, - [15106] = 4, - ACTIONS(762), 1, + [15154] = 4, + ACTIONS(743), 1, sym_comment, ACTIONS(838), 1, anon_sym_DQUOTE, - STATE(362), 1, + STATE(374), 1, aux_sym_string_literal_repeat1, ACTIONS(840), 2, sym_double_quote_string_body, sym_escape_sequence, - [15120] = 4, - ACTIONS(762), 1, + [15168] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(843), 1, + ACTIONS(838), 1, anon_sym_SQUOTE, - STATE(363), 1, + STATE(375), 1, aux_sym_string_literal_repeat2, - ACTIONS(845), 2, + ACTIONS(842), 2, sym_single_quote_string_body, sym_escape_sequence, - [15134] = 2, + [15182] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(848), 4, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_DASH_GT, - anon_sym_QMARK2, - [15144] = 2, + ACTIONS(792), 1, + anon_sym_LT, + STATE(448), 1, + sym_generics_bound, + ACTIONS(844), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [15196] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(850), 4, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_DASH_GT, - anon_sym_QMARK2, - [15154] = 5, + ACTIONS(792), 1, + anon_sym_LT, + STATE(426), 1, + sym_generics_bound, + ACTIONS(846), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [15210] = 4, + ACTIONS(743), 1, + sym_comment, + ACTIONS(848), 1, + anon_sym_SQUOTE, + STATE(361), 1, + aux_sym_string_literal_repeat2, + ACTIONS(850), 2, + sym_single_quote_string_body, + sym_escape_sequence, + [15224] = 4, + ACTIONS(743), 1, + sym_comment, + ACTIONS(848), 1, + anon_sym_DQUOTE, + STATE(364), 1, + aux_sym_string_literal_repeat1, + ACTIONS(852), 2, + sym_double_quote_string_body, + sym_escape_sequence, + [15238] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(665), 1, anon_sym_LBRACE, ACTIONS(669), 1, anon_sym_QMARK2, - ACTIONS(852), 1, + ACTIONS(854), 1, anon_sym_DASH_GT, - STATE(517), 1, + STATE(479), 1, sym_block, - [15170] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(854), 4, - sym_constant, - sym_interface, - sym_variable, - anon_sym_STAR, - [15180] = 4, - ACTIONS(762), 1, + [15254] = 4, + ACTIONS(743), 1, sym_comment, ACTIONS(856), 1, anon_sym_SQUOTE, - STATE(363), 1, + STATE(356), 1, aux_sym_string_literal_repeat2, - ACTIONS(804), 2, + ACTIONS(832), 2, sym_single_quote_string_body, sym_escape_sequence, - [15194] = 4, - ACTIONS(762), 1, + [15268] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(858), 4, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_QMARK2, + [15278] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(856), 1, + ACTIONS(860), 1, anon_sym_DQUOTE, - STATE(362), 1, + STATE(349), 1, aux_sym_string_literal_repeat1, - ACTIONS(806), 2, + ACTIONS(836), 2, sym_double_quote_string_body, sym_escape_sequence, - [15208] = 4, + [15292] = 4, + ACTIONS(743), 1, + sym_comment, + ACTIONS(860), 1, + anon_sym_SQUOTE, + STATE(356), 1, + aux_sym_string_literal_repeat2, + ACTIONS(832), 2, + sym_single_quote_string_body, + sym_escape_sequence, + [15306] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(794), 1, - anon_sym_LT, - STATE(453), 1, - sym_generics_bound, - ACTIONS(858), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [15222] = 5, + ACTIONS(456), 1, + anon_sym_PIPE, + ACTIONS(458), 1, + anon_sym_AMP, + ACTIONS(460), 1, + anon_sym_QMARK, + ACTIONS(862), 1, + anon_sym_RBRACE, + [15322] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(665), 1, anon_sym_LBRACE, ACTIONS(669), 1, anon_sym_QMARK2, - ACTIONS(860), 1, + ACTIONS(762), 1, anon_sym_DASH_GT, - STATE(472), 1, + STATE(461), 1, sym_block, - [15238] = 2, + [15338] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(862), 4, - anon_sym_LBRACK, + ACTIONS(665), 1, anon_sym_LBRACE, - anon_sym_DASH_GT, + ACTIONS(669), 1, anon_sym_QMARK2, - [15248] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, ACTIONS(864), 1, - anon_sym_RBRACE, - [15264] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, - sym_constant, - STATE(187), 1, - sym_class_name, - STATE(469), 1, - sym_namespace, - [15280] = 2, + anon_sym_DASH_GT, + STATE(499), 1, + sym_block, + [15354] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(866), 4, @@ -17563,1071 +17632,1006 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACE, anon_sym_DASH_GT, anon_sym_QMARK2, - [15290] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, - sym_constant, - STATE(12), 1, - sym_class_name, - STATE(469), 1, - sym_namespace, - [15306] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, - sym_constant, - STATE(189), 1, - sym_class_name, - STATE(469), 1, - sym_namespace, - [15322] = 5, - ACTIONS(3), 1, + [15364] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(456), 1, - anon_sym_QMARK, - ACTIONS(458), 1, - anon_sym_AMP, - ACTIONS(460), 1, - anon_sym_PIPE, ACTIONS(868), 1, - anon_sym_RBRACE, - [15338] = 5, - ACTIONS(3), 1, + anon_sym_DQUOTE, + STATE(384), 1, + aux_sym_string_literal_repeat1, + ACTIONS(870), 2, + sym_double_quote_string_body, + sym_escape_sequence, + [15378] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, - sym_constant, - STATE(469), 1, - sym_namespace, - STATE(481), 1, - sym_class_name, - [15354] = 5, + ACTIONS(868), 1, + anon_sym_SQUOTE, + STATE(372), 1, + aux_sym_string_literal_repeat2, + ACTIONS(872), 2, + sym_single_quote_string_body, + sym_escape_sequence, + [15392] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - sym__scope, - ACTIONS(151), 1, + ACTIONS(874), 4, sym_constant, - STATE(198), 1, - sym_class_name, - STATE(469), 1, - sym_namespace, - [15370] = 2, + sym_interface, + sym_variable, + anon_sym_STAR, + [15402] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(870), 4, + ACTIONS(876), 4, anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_DASH_GT, anon_sym_QMARK2, - [15380] = 4, - ACTIONS(3), 1, + [15412] = 4, + ACTIONS(743), 1, sym_comment, - ACTIONS(794), 1, - anon_sym_LT, - STATE(457), 1, - sym_generics_bound, - ACTIONS(872), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [15394] = 4, + ACTIONS(856), 1, + anon_sym_DQUOTE, + STATE(349), 1, + aux_sym_string_literal_repeat1, + ACTIONS(836), 2, + sym_double_quote_string_body, + sym_escape_sequence, + [15426] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(874), 1, + ACTIONS(248), 1, + anon_sym_RBRACK, + ACTIONS(878), 1, anon_sym_COMMA, - ACTIONS(876), 1, - anon_sym_RBRACE, - STATE(422), 1, - aux_sym_record_type_repeat1, - [15407] = 4, + STATE(405), 1, + aux_sym_tuple_type_repeat1, + [15439] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(878), 1, - sym_constant, ACTIONS(880), 1, - sym_interface, + sym_constant, ACTIONS(882), 1, + sym_interface, + ACTIONS(884), 1, sym_variable, - [15420] = 4, + [15452] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(884), 1, - anon_sym_COMMA, ACTIONS(886), 1, - anon_sym_RBRACK, - STATE(409), 1, - aux_sym_module_type_parameters_repeat1, - [15433] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(888), 3, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LT, - [15442] = 4, + sym_identifier, + ACTIONS(888), 1, + anon_sym_RBRACE, + STATE(454), 1, + sym__record_type_single, + [15465] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(707), 1, - anon_sym_LBRACK, ACTIONS(890), 1, - anon_sym_DASH_GT, - STATE(510), 1, - sym_self_type_binding, - [15455] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(884), 1, anon_sym_COMMA, ACTIONS(892), 1, - anon_sym_RBRACK, - STATE(385), 1, - aux_sym_module_type_parameters_repeat1, - [15468] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(731), 1, - anon_sym_COMMA, - ACTIONS(894), 1, - anon_sym_RBRACK, - STATE(420), 1, - aux_sym_tuple_type_repeat1, - [15481] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(896), 1, - anon_sym_COMMA, - ACTIONS(898), 1, - anon_sym_RBRACK, - STATE(392), 1, - aux_sym_method_type_parameters_repeat1, - [15494] = 4, + anon_sym_RBRACE, + STATE(407), 1, + aux_sym_record_type_repeat1, + [15478] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(902), 1, + ACTIONS(894), 1, anon_sym_RBRACE, - STATE(436), 1, + STATE(420), 1, sym__record_type_single, - [15507] = 4, + [15491] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(896), 1, + ACTIONS(896), 3, anon_sym_COMMA, - ACTIONS(904), 1, anon_sym_RBRACK, - STATE(394), 1, - aux_sym_method_type_parameters_repeat1, - [15520] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(906), 1, - anon_sym_COMMA, - ACTIONS(908), 1, - anon_sym_RBRACE, - STATE(415), 1, - aux_sym_record_type_repeat1, - [15533] = 4, + anon_sym_LT, + [15500] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(910), 1, + ACTIONS(898), 1, anon_sym_COMMA, - ACTIONS(913), 1, + ACTIONS(901), 1, anon_sym_RBRACK, - STATE(394), 1, - aux_sym_method_type_parameters_repeat1, - [15546] = 4, + STATE(391), 1, + aux_sym_module_type_parameters_repeat1, + [15513] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(915), 1, + ACTIONS(903), 1, anon_sym_RBRACE, - STATE(436), 1, + STATE(454), 1, sym__record_type_single, - [15559] = 4, + [15526] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(246), 1, - anon_sym_RBRACK, - ACTIONS(917), 1, - anon_sym_COMMA, - STATE(420), 1, - aux_sym_tuple_type_repeat1, - [15572] = 4, + ACTIONS(905), 1, + sym_constant, + ACTIONS(907), 1, + sym_interface, + ACTIONS(909), 1, + sym_variable, + [15539] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(731), 1, + ACTIONS(733), 1, anon_sym_COMMA, - ACTIONS(919), 1, + ACTIONS(911), 1, anon_sym_RBRACK, - STATE(420), 1, + STATE(405), 1, aux_sym_tuple_type_repeat1, - [15585] = 4, + [15552] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(921), 1, - sym_identifier, - ACTIONS(923), 1, - sym_self, - STATE(508), 1, - sym_method_name, - [15598] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(925), 1, + ACTIONS(913), 1, anon_sym_COMMA, - ACTIONS(927), 1, + ACTIONS(915), 1, anon_sym_RBRACE, - STATE(415), 1, + STATE(388), 1, aux_sym_record_type_repeat1, - [15611] = 4, + [15565] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(929), 1, + ACTIONS(917), 1, anon_sym_RBRACE, - STATE(436), 1, + STATE(398), 1, sym__record_type_single, - [15624] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(707), 1, - anon_sym_LBRACK, - ACTIONS(931), 1, - anon_sym_DASH_GT, - STATE(479), 1, - sym_self_type_binding, - [15637] = 4, + [15578] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(933), 1, + ACTIONS(919), 1, anon_sym_COMMA, - ACTIONS(935), 1, - anon_sym_RBRACE, - STATE(393), 1, - aux_sym_record_type_repeat1, - [15650] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(937), 1, - anon_sym_LPAREN, - ACTIONS(939), 1, - anon_sym_COLON, - ACTIONS(941), 1, - anon_sym_LPAREN_RPAREN, - [15663] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(943), 1, - sym_constant, - ACTIONS(945), 1, - sym_interface, - ACTIONS(947), 1, - sym_variable, - [15676] = 4, + ACTIONS(921), 1, + anon_sym_RBRACK, + STATE(421), 1, + aux_sym_module_type_parameters_repeat1, + [15591] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, + ACTIONS(923), 1, anon_sym_COMMA, - ACTIONS(951), 1, + ACTIONS(925), 1, anon_sym_RBRACE, - STATE(399), 1, + STATE(404), 1, aux_sym_record_type_repeat1, - [15689] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(953), 1, - sym_constant, - ACTIONS(955), 1, - sym_interface, - ACTIONS(957), 1, - sym_variable, - [15702] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(959), 1, - anon_sym_LPAREN, - ACTIONS(961), 1, - anon_sym_COLON, - ACTIONS(963), 1, - anon_sym_LPAREN_RPAREN, - [15715] = 4, + [15604] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(965), 1, + ACTIONS(927), 1, anon_sym_RBRACE, - STATE(405), 1, + STATE(395), 1, sym__record_type_single, - [15728] = 4, + [15617] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(967), 1, + ACTIONS(929), 1, anon_sym_COMMA, - ACTIONS(970), 1, + ACTIONS(932), 1, anon_sym_RBRACK, - STATE(409), 1, - aux_sym_module_type_parameters_repeat1, - [15741] = 4, + STATE(400), 1, + aux_sym_method_type_parameters_repeat1, + [15630] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, - sym_identifier, - ACTIONS(972), 1, - anon_sym_RBRACE, - STATE(402), 1, - sym__record_type_single, - [15754] = 4, + ACTIONS(934), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_QMARK2, + [15639] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(244), 1, + ACTIONS(171), 1, anon_sym_RBRACK, - ACTIONS(974), 1, + ACTIONS(936), 1, anon_sym_COMMA, - STATE(420), 1, + STATE(405), 1, aux_sym_tuple_type_repeat1, - [15767] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(921), 1, - sym_identifier, - ACTIONS(976), 1, - sym_self, - STATE(459), 1, - sym_method_name, - [15780] = 4, + [15652] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(921), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(978), 1, - sym_self, - STATE(446), 1, - sym_method_name, - [15793] = 4, + ACTIONS(938), 1, + anon_sym_RBRACE, + STATE(454), 1, + sym__record_type_single, + [15665] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(731), 1, + ACTIONS(940), 1, anon_sym_COMMA, - ACTIONS(980), 1, - anon_sym_RBRACK, - STATE(420), 1, - aux_sym_tuple_type_repeat1, - [15806] = 4, + ACTIONS(942), 1, + anon_sym_RBRACE, + STATE(407), 1, + aux_sym_record_type_repeat1, + [15678] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(982), 1, + ACTIONS(788), 1, + anon_sym_RBRACK, + ACTIONS(944), 1, anon_sym_COMMA, - ACTIONS(985), 1, - anon_sym_RBRACE, - STATE(415), 1, - aux_sym_record_type_repeat1, - [15819] = 4, + STATE(405), 1, + aux_sym_tuple_type_repeat1, + [15691] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(987), 1, + ACTIONS(947), 1, anon_sym_RBRACE, - STATE(436), 1, + STATE(454), 1, sym__record_type_single, - [15832] = 4, + [15704] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, - sym_identifier, - ACTIONS(989), 1, + ACTIONS(949), 1, + anon_sym_COMMA, + ACTIONS(952), 1, anon_sym_RBRACE, - STATE(436), 1, - sym__record_type_single, - [15845] = 4, + STATE(407), 1, + aux_sym_record_type_repeat1, + [15717] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(921), 1, + ACTIONS(802), 1, sym_identifier, - ACTIONS(991), 1, + ACTIONS(954), 1, sym_self, - STATE(516), 1, + STATE(523), 1, sym_method_name, - [15858] = 4, + [15730] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(993), 1, + ACTIONS(956), 1, anon_sym_RBRACE, - STATE(383), 1, + STATE(454), 1, sym__record_type_single, - [15871] = 4, + [15743] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(788), 1, - anon_sym_RBRACK, - ACTIONS(995), 1, + ACTIONS(958), 1, anon_sym_COMMA, - STATE(420), 1, - aux_sym_tuple_type_repeat1, - [15884] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(998), 3, - anon_sym_LBRACE, - anon_sym_DASH_GT, - anon_sym_QMARK2, - [15893] = 4, + ACTIONS(960), 1, + anon_sym_RBRACE, + STATE(407), 1, + aux_sym_record_type_repeat1, + [15756] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1000), 1, + ACTIONS(733), 1, anon_sym_COMMA, - ACTIONS(1002), 1, - anon_sym_RBRACE, - STATE(415), 1, - aux_sym_record_type_repeat1, - [15906] = 4, + ACTIONS(962), 1, + anon_sym_RBRACK, + STATE(405), 1, + aux_sym_tuple_type_repeat1, + [15769] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(95), 1, + ACTIONS(715), 1, anon_sym_LBRACK, - ACTIONS(1004), 1, - anon_sym_EQ, - STATE(462), 1, - sym_module_type_parameters, - [15919] = 4, + ACTIONS(964), 1, + anon_sym_DASH_GT, + STATE(506), 1, + sym_self_type_binding, + [15782] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(966), 1, + anon_sym_LPAREN, + ACTIONS(968), 1, + anon_sym_COLON, + ACTIONS(970), 1, + anon_sym_LPAREN_RPAREN, + [15795] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, + ACTIONS(886), 1, sym_identifier, - ACTIONS(1006), 1, + ACTIONS(972), 1, anon_sym_RBRACE, - STATE(436), 1, + STATE(454), 1, sym__record_type_single, - [15932] = 4, + [15808] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(183), 1, anon_sym_RBRACK, - ACTIONS(1008), 1, + ACTIONS(974), 1, anon_sym_COMMA, - STATE(420), 1, + STATE(405), 1, aux_sym_tuple_type_repeat1, - [15945] = 3, + [15821] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1010), 1, - anon_sym_RPAREN, - ACTIONS(1012), 1, + ACTIONS(976), 1, + sym_constant, + ACTIONS(978), 1, + sym_interface, + ACTIONS(980), 1, + sym_variable, + [15834] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(802), 1, + sym_identifier, + ACTIONS(982), 1, + sym_self, + STATE(515), 1, + sym_method_name, + [15847] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(984), 1, anon_sym_COMMA, - [15955] = 3, + ACTIONS(986), 1, + anon_sym_RBRACK, + STATE(400), 1, + aux_sym_method_type_parameters_repeat1, + [15860] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(947), 1, - sym_variable, - ACTIONS(1014), 1, - sym_constant, - [15965] = 3, + ACTIONS(715), 1, + anon_sym_LBRACK, + ACTIONS(988), 1, + anon_sym_DASH_GT, + STATE(525), 1, + sym_self_type_binding, + [15873] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(264), 1, - sym__scope, - ACTIONS(1016), 1, - anon_sym_COLON, - [15975] = 3, + ACTIONS(990), 1, + anon_sym_COMMA, + ACTIONS(992), 1, + anon_sym_RBRACE, + STATE(410), 1, + aux_sym_record_type_repeat1, + [15886] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(945), 1, - sym_interface, - ACTIONS(1014), 1, - sym_constant, - [15985] = 3, + ACTIONS(919), 1, + anon_sym_COMMA, + ACTIONS(994), 1, + anon_sym_RBRACK, + STATE(391), 1, + aux_sym_module_type_parameters_repeat1, + [15899] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 1, - sym_identifier, - STATE(483), 1, - sym_method_name, - [15995] = 3, + ACTIONS(996), 1, + anon_sym_LPAREN, + ACTIONS(998), 1, + anon_sym_COLON, + ACTIONS(1000), 1, + anon_sym_LPAREN_RPAREN, + [15912] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 1, - sym_identifier, - STATE(231), 1, - sym_method_name, - [16005] = 3, + ACTIONS(733), 1, + anon_sym_COMMA, + ACTIONS(1002), 1, + anon_sym_RBRACK, + STATE(405), 1, + aux_sym_tuple_type_repeat1, + [15925] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(943), 1, - sym_constant, - ACTIONS(1020), 1, - anon_sym_STAR, - [16015] = 3, + ACTIONS(984), 1, + anon_sym_COMMA, + ACTIONS(1004), 1, + anon_sym_RBRACK, + STATE(418), 1, + aux_sym_method_type_parameters_repeat1, + [15938] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(723), 1, - sym_constant, - STATE(337), 1, - sym_type_variable, - [16025] = 3, + ACTIONS(99), 1, + anon_sym_LBRACK, + ACTIONS(1006), 1, + anon_sym_EQ, + STATE(487), 1, + sym_module_type_parameters, + [15951] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1022), 1, - sym_identifier, - STATE(529), 1, - sym_method_name, - [16035] = 3, + ACTIONS(1008), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [15959] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 1, + ACTIONS(1010), 1, sym_identifier, - STATE(476), 1, + STATE(413), 1, sym_method_name, - [16045] = 2, + [15969] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1024), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [16053] = 3, + ACTIONS(1010), 1, + sym_identifier, + STATE(486), 1, + sym_method_name, + [15979] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(723), 1, sym_constant, - STATE(390), 1, + STATE(438), 1, sym_type_variable, - [16063] = 2, + [15989] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1026), 2, - anon_sym_DOT, - anon_sym_QMARK_DOT, - [16071] = 3, + ACTIONS(884), 1, + sym_variable, + ACTIONS(1012), 1, + sym_constant, + [15999] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(258), 1, - sym__scope, - ACTIONS(1028), 1, - anon_sym_COLON, - [16081] = 2, + ACTIONS(882), 1, + sym_interface, + ACTIONS(1012), 1, + sym_constant, + [16009] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(970), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [16089] = 2, + ACTIONS(1010), 1, + sym_identifier, + STATE(422), 1, + sym_method_name, + [16019] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1030), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [16097] = 2, + ACTIONS(1014), 1, + sym_identifier, + STATE(220), 1, + sym_method_name, + [16029] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1032), 2, + ACTIONS(1016), 1, + anon_sym_RPAREN, + ACTIONS(1018), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [16105] = 3, + [16039] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 1, + ACTIONS(1014), 1, sym_identifier, - STATE(403), 1, + STATE(221), 1, sym_method_name, - [16115] = 3, + [16049] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1034), 1, - anon_sym_RPAREN, - ACTIONS(1036), 1, - anon_sym_COMMA, - [16125] = 2, + ACTIONS(1020), 1, + sym_self, + STATE(221), 1, + sym_singleton_method_name, + [16059] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(880), 1, + sym_constant, + ACTIONS(882), 1, + sym_interface, + [16069] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(858), 2, + ACTIONS(932), 2, anon_sym_COMMA, anon_sym_RBRACK, - [16133] = 3, + [16077] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 1, - sym_identifier, - STATE(220), 1, - sym_method_name, - [16143] = 3, + ACTIONS(846), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [16085] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1022), 1, - sym_identifier, - STATE(487), 1, - sym_method_name, - [16153] = 3, + ACTIONS(1022), 2, + anon_sym_DOT, + anon_sym_QMARK_DOT, + [16093] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(723), 1, sym_constant, - STATE(370), 1, + STATE(336), 1, sym_type_variable, - [16163] = 3, + [16103] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 1, - sym_identifier, - STATE(407), 1, - sym_method_name, - [16173] = 2, + ACTIONS(1024), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [16111] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1026), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [16119] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(913), 2, + ACTIONS(901), 2, anon_sym_COMMA, anon_sym_RBRACK, - [16181] = 3, + [16127] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1022), 1, + ACTIONS(1010), 1, sym_identifier, - STATE(231), 1, + STATE(221), 1, sym_method_name, - [16191] = 3, + [16137] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(900), 1, - sym_identifier, - STATE(436), 1, - sym__record_type_single, - [16201] = 2, + ACTIONS(723), 1, + sym_constant, + STATE(424), 1, + sym_type_variable, + [16147] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(880), 1, + sym_constant, + ACTIONS(1028), 1, + anon_sym_STAR, + [16157] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1038), 2, + ACTIONS(790), 2, anon_sym_COMMA, anon_sym_RBRACK, - [16209] = 3, + [16165] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(661), 1, - anon_sym_LPAREN, - STATE(401), 1, - sym_parameters, - [16219] = 3, + ACTIONS(1030), 1, + sym_self, + STATE(221), 1, + sym_singleton_method_name, + [16175] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(661), 1, anon_sym_LPAREN, - STATE(387), 1, + STATE(419), 1, sym_parameters, - [16229] = 3, + [16185] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(723), 1, sym_constant, - STATE(450), 1, + STATE(368), 1, sym_type_variable, - [16239] = 2, + [16195] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(886), 1, + sym_identifier, + STATE(454), 1, + sym__record_type_single, + [16205] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(264), 1, + sym__scope, + ACTIONS(1032), 1, + anon_sym_COLON, + [16215] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(792), 2, + ACTIONS(1034), 2, anon_sym_COMMA, - anon_sym_RBRACK, - [16247] = 3, + anon_sym_RBRACE, + [16223] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(943), 1, - sym_constant, - ACTIONS(945), 1, - sym_interface, - [16257] = 3, + ACTIONS(661), 1, + anon_sym_LPAREN, + STATE(412), 1, + sym_parameters, + [16233] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1022), 1, + ACTIONS(1010), 1, sym_identifier, STATE(220), 1, sym_method_name, - [16267] = 2, + [16243] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1040), 1, - anon_sym_RPAREN, - [16274] = 2, + ACTIONS(1010), 1, + sym_identifier, + STATE(522), 1, + sym_method_name, + [16253] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(67), 1, + ACTIONS(1036), 1, anon_sym_RPAREN, - [16281] = 2, + ACTIONS(1038), 1, + anon_sym_COMMA, + [16263] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1042), 1, - anon_sym_EQ, - [16288] = 2, + ACTIONS(258), 1, + sym__scope, + ACTIONS(1040), 1, + anon_sym_COLON, + [16273] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1044), 1, + ACTIONS(1042), 1, anon_sym_COLON, - [16295] = 2, + [16280] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1040), 1, - anon_sym_RPAREN, - [16302] = 2, + ACTIONS(864), 1, + anon_sym_DASH_GT, + [16287] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1044), 1, + anon_sym_COLON, + [16294] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1046), 1, anon_sym_COLON, - [16309] = 2, + [16301] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1048), 1, - sym_self, - [16316] = 2, + anon_sym_COLON, + [16308] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(852), 1, - anon_sym_DASH_GT, - [16323] = 2, + ACTIONS(880), 1, + sym_constant, + [16315] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(87), 1, + ACTIONS(67), 1, anon_sym_RPAREN, - [16330] = 2, + [16322] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(943), 1, - sym_constant, - [16337] = 2, + ACTIONS(1050), 1, + anon_sym_RPAREN, + [16329] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1050), 1, - sym_var_name, - [16344] = 2, + anon_sym_RPAREN, + [16336] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1052), 1, - anon_sym_LPAREN, - [16351] = 2, + anon_sym_COLON, + [16343] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1054), 1, + sym_constant, + [16350] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(753), 1, anon_sym_DASH_GT, - [16358] = 2, + [16357] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1056), 1, - anon_sym_COLON, - [16365] = 2, + anon_sym_RPAREN, + [16364] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1058), 1, anon_sym_COLON, - [16372] = 2, + [16371] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1060), 1, - anon_sym_DASH_GT, - [16379] = 2, + sym_ivar_name, + [16378] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1062), 1, anon_sym_COLON, - [16386] = 2, + [16385] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(854), 1, + anon_sym_DASH_GT, + [16392] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1064), 1, sym_constant, - [16393] = 2, + [16399] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1066), 1, - anon_sym_COLON, - [16400] = 2, + anon_sym_LBRACE, + [16406] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1068), 1, anon_sym_DASH_GT, - [16407] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(703), 1, - anon_sym_RPAREN, - [16414] = 2, + [16413] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1070), 1, - anon_sym_RPAREN, - [16421] = 2, + anon_sym_DOT, + [16420] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(961), 1, + ACTIONS(1072), 1, anon_sym_COLON, - [16428] = 2, + [16427] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1072), 1, - anon_sym_COLON, - [16435] = 2, + ACTIONS(1074), 1, + sym_identifier, + [16434] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(860), 1, - anon_sym_DASH_GT, - [16442] = 2, + ACTIONS(1076), 1, + anon_sym_def, + [16441] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1074), 1, + ACTIONS(85), 1, anon_sym_RPAREN, - [16449] = 2, + [16448] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1076), 1, - anon_sym_LBRACE, - [16456] = 2, + ACTIONS(264), 1, + sym__scope, + [16455] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1078), 1, - sym_self, - [16463] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(753), 1, - anon_sym_DASH_GT, - [16470] = 2, + anon_sym_COLON, + [16462] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1080), 1, - anon_sym_RPAREN, - [16477] = 2, + anon_sym_EQ, + [16469] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1082), 1, - ts_builtin_sym_end, - [16484] = 2, + ACTIONS(762), 1, + anon_sym_DASH_GT, + [16476] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(258), 1, - sym__scope, - [16491] = 2, + ACTIONS(1082), 1, + anon_sym_RPAREN, + [16483] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1084), 1, - sym_ivar_name, - [16498] = 2, + ts_builtin_sym_end, + [16490] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1086), 1, - anon_sym_COLON, - [16505] = 2, + anon_sym_LPAREN, + [16497] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 1, - anon_sym_RPAREN, - [16512] = 2, + ACTIONS(786), 1, + anon_sym_def, + [16504] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(814), 1, - anon_sym_DASH_GT, - [16519] = 2, + ACTIONS(1088), 1, + sym_ivar_name, + [16511] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1090), 1, - sym_ivar_name, - [16526] = 2, + anon_sym_DASH_GT, + [16518] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1092), 1, - anon_sym_COLON, - [16533] = 2, + anon_sym_RPAREN, + [16525] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1094), 1, - anon_sym_DOT, - [16540] = 2, + anon_sym_RPAREN, + [16532] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1096), 1, - anon_sym_DASH_GT, - [16547] = 2, + anon_sym_COLON, + [16539] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1098), 1, - sym_identifier, - [16554] = 2, + anon_sym_DASH_GT, + [16546] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1100), 1, - anon_sym_DOT, - [16561] = 2, + anon_sym_DASH_GT, + [16553] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1102), 1, - anon_sym_DOT, - [16568] = 2, + anon_sym_RPAREN, + [16560] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1104), 1, - anon_sym_COLON, - [16575] = 2, + sym_var_name, + [16567] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1106), 1, anon_sym_RPAREN, - [16582] = 2, + [16574] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1108), 1, - anon_sym_COLON, - [16589] = 2, + anon_sym_RPAREN, + [16581] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(462), 1, + anon_sym_QMARK2, + [16588] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(87), 1, + anon_sym_RPAREN, + [16595] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(988), 1, + anon_sym_DASH_GT, + [16602] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1110), 1, - anon_sym_COLON, - [16596] = 2, + sym_self, + [16609] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1112), 1, sym_constant, - [16603] = 2, + [16616] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1114), 1, - anon_sym_COLON, - [16610] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(85), 1, anon_sym_RPAREN, - [16617] = 2, + [16623] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(931), 1, - anon_sym_DASH_GT, - [16624] = 2, + ACTIONS(1116), 1, + anon_sym_DOT, + [16630] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1116), 1, + ACTIONS(998), 1, anon_sym_COLON, - [16631] = 2, + [16637] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1118), 1, - anon_sym_DOT, - [16638] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1120), 1, sym_ivar_name, - [16645] = 2, + [16644] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(776), 1, + ACTIONS(764), 1, anon_sym_DASH_GT, - [16652] = 2, + [16651] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1122), 1, + ACTIONS(1120), 1, anon_sym_RPAREN, - [16659] = 2, + [16658] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1124), 1, + ACTIONS(1122), 1, anon_sym_COLON, - [16666] = 2, + [16665] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1126), 1, + ACTIONS(1124), 1, anon_sym_DASH_GT, - [16673] = 2, + [16672] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(782), 1, - anon_sym_def, - [16680] = 2, + ACTIONS(713), 1, + anon_sym_RPAREN, + [16679] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1128), 1, - anon_sym_def, - [16687] = 2, + ACTIONS(1126), 1, + anon_sym_DASH_GT, + [16686] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1130), 1, + ACTIONS(1128), 1, anon_sym_DOT, - [16694] = 2, + [16693] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(800), 1, + ACTIONS(815), 1, anon_sym_DASH_GT, - [16701] = 2, + [16700] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(739), 1, + ACTIONS(813), 1, anon_sym_DASH_GT, - [16708] = 2, + [16707] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(264), 1, - sym__scope, - [16715] = 2, + ACTIONS(1130), 1, + anon_sym_COLON, + [16714] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1132), 1, - anon_sym_DASH_GT, - [16722] = 2, + anon_sym_COLON, + [16721] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1134), 1, anon_sym_DASH_GT, - [16729] = 2, + [16728] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1136), 1, - anon_sym_RPAREN, - [16736] = 2, + anon_sym_DASH_GT, + [16735] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1138), 1, - anon_sym_DASH_GT, - [16743] = 2, + anon_sym_DOT, + [16742] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1140), 1, - anon_sym_RPAREN, - [16750] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1142), 1, - sym_self, - [16757] = 2, + anon_sym_COLON, + [16749] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1144), 1, - anon_sym_RPAREN, - [16764] = 2, + ACTIONS(258), 1, + sym__scope, + [16756] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1146), 1, - sym_constant, - [16771] = 2, + ACTIONS(1142), 1, + anon_sym_COLON, + [16763] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1148), 1, + ACTIONS(1144), 1, anon_sym_LPAREN, - [16778] = 2, + [16770] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(472), 1, - anon_sym_QMARK2, - [16785] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1150), 1, + ACTIONS(1146), 1, anon_sym_LPAREN, - [16792] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1152), 1, - anon_sym_DOT, }; static const uint32_t ts_small_parse_table_map[] = { @@ -18640,7 +18644,7 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(8)] = 699, [SMALL_STATE(9)] = 810, [SMALL_STATE(10)] = 905, - [SMALL_STATE(11)] = 1010, + [SMALL_STATE(11)] = 1000, [SMALL_STATE(12)] = 1105, [SMALL_STATE(13)] = 1210, [SMALL_STATE(14)] = 1304, @@ -18650,30 +18654,30 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(18)] = 1679, [SMALL_STATE(19)] = 1769, [SMALL_STATE(20)] = 1859, - [SMALL_STATE(21)] = 1949, - [SMALL_STATE(22)] = 2039, - [SMALL_STATE(23)] = 2123, - [SMALL_STATE(24)] = 2207, - [SMALL_STATE(25)] = 2291, - [SMALL_STATE(26)] = 2381, - [SMALL_STATE(27)] = 2465, - [SMALL_STATE(28)] = 2549, - [SMALL_STATE(29)] = 2633, - [SMALL_STATE(30)] = 2717, - [SMALL_STATE(31)] = 2801, - [SMALL_STATE(32)] = 2891, - [SMALL_STATE(33)] = 2981, - [SMALL_STATE(34)] = 3065, - [SMALL_STATE(35)] = 3149, - [SMALL_STATE(36)] = 3233, - [SMALL_STATE(37)] = 3317, + [SMALL_STATE(21)] = 1943, + [SMALL_STATE(22)] = 2027, + [SMALL_STATE(23)] = 2111, + [SMALL_STATE(24)] = 2195, + [SMALL_STATE(25)] = 2279, + [SMALL_STATE(26)] = 2363, + [SMALL_STATE(27)] = 2447, + [SMALL_STATE(28)] = 2537, + [SMALL_STATE(29)] = 2621, + [SMALL_STATE(30)] = 2705, + [SMALL_STATE(31)] = 2789, + [SMALL_STATE(32)] = 2879, + [SMALL_STATE(33)] = 2969, + [SMALL_STATE(34)] = 3053, + [SMALL_STATE(35)] = 3137, + [SMALL_STATE(36)] = 3227, + [SMALL_STATE(37)] = 3311, [SMALL_STATE(38)] = 3401, - [SMALL_STATE(39)] = 3485, - [SMALL_STATE(40)] = 3569, - [SMALL_STATE(41)] = 3659, - [SMALL_STATE(42)] = 3743, - [SMALL_STATE(43)] = 3833, - [SMALL_STATE(44)] = 3923, + [SMALL_STATE(39)] = 3491, + [SMALL_STATE(40)] = 3575, + [SMALL_STATE(41)] = 3665, + [SMALL_STATE(42)] = 3755, + [SMALL_STATE(43)] = 3839, + [SMALL_STATE(44)] = 3929, [SMALL_STATE(45)] = 4013, [SMALL_STATE(46)] = 4094, [SMALL_STATE(47)] = 4175, @@ -18721,28 +18725,28 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(89)] = 7469, [SMALL_STATE(90)] = 7514, [SMALL_STATE(91)] = 7559, - [SMALL_STATE(92)] = 7599, - [SMALL_STATE(93)] = 7639, - [SMALL_STATE(94)] = 7685, - [SMALL_STATE(95)] = 7727, - [SMALL_STATE(96)] = 7767, - [SMALL_STATE(97)] = 7807, - [SMALL_STATE(98)] = 7855, - [SMALL_STATE(99)] = 7895, - [SMALL_STATE(100)] = 7935, - [SMALL_STATE(101)] = 7975, - [SMALL_STATE(102)] = 8017, - [SMALL_STATE(103)] = 8057, - [SMALL_STATE(104)] = 8097, - [SMALL_STATE(105)] = 8143, - [SMALL_STATE(106)] = 8183, - [SMALL_STATE(107)] = 8223, - [SMALL_STATE(108)] = 8263, - [SMALL_STATE(109)] = 8307, - [SMALL_STATE(110)] = 8347, - [SMALL_STATE(111)] = 8393, - [SMALL_STATE(112)] = 8433, - [SMALL_STATE(113)] = 8473, + [SMALL_STATE(92)] = 7601, + [SMALL_STATE(93)] = 7645, + [SMALL_STATE(94)] = 7691, + [SMALL_STATE(95)] = 7731, + [SMALL_STATE(96)] = 7771, + [SMALL_STATE(97)] = 7811, + [SMALL_STATE(98)] = 7851, + [SMALL_STATE(99)] = 7891, + [SMALL_STATE(100)] = 7931, + [SMALL_STATE(101)] = 7979, + [SMALL_STATE(102)] = 8025, + [SMALL_STATE(103)] = 8067, + [SMALL_STATE(104)] = 8113, + [SMALL_STATE(105)] = 8153, + [SMALL_STATE(106)] = 8193, + [SMALL_STATE(107)] = 8233, + [SMALL_STATE(108)] = 8273, + [SMALL_STATE(109)] = 8313, + [SMALL_STATE(110)] = 8353, + [SMALL_STATE(111)] = 8395, + [SMALL_STATE(112)] = 8435, + [SMALL_STATE(113)] = 8475, [SMALL_STATE(114)] = 8515, [SMALL_STATE(115)] = 8555, [SMALL_STATE(116)] = 8601, @@ -18754,111 +18758,111 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(122)] = 8841, [SMALL_STATE(123)] = 8881, [SMALL_STATE(124)] = 8921, - [SMALL_STATE(125)] = 8963, - [SMALL_STATE(126)] = 9005, + [SMALL_STATE(125)] = 8957, + [SMALL_STATE(126)] = 8999, [SMALL_STATE(127)] = 9041, [SMALL_STATE(128)] = 9083, - [SMALL_STATE(129)] = 9119, - [SMALL_STATE(130)] = 9161, - [SMALL_STATE(131)] = 9201, - [SMALL_STATE(132)] = 9243, - [SMALL_STATE(133)] = 9283, + [SMALL_STATE(129)] = 9123, + [SMALL_STATE(130)] = 9163, + [SMALL_STATE(131)] = 9203, + [SMALL_STATE(132)] = 9245, + [SMALL_STATE(133)] = 9287, [SMALL_STATE(134)] = 9323, [SMALL_STATE(135)] = 9365, - [SMALL_STATE(136)] = 9400, + [SMALL_STATE(136)] = 9402, [SMALL_STATE(137)] = 9437, - [SMALL_STATE(138)] = 9474, - [SMALL_STATE(139)] = 9511, + [SMALL_STATE(138)] = 9472, + [SMALL_STATE(139)] = 9509, [SMALL_STATE(140)] = 9546, - [SMALL_STATE(141)] = 9580, - [SMALL_STATE(142)] = 9614, - [SMALL_STATE(143)] = 9650, - [SMALL_STATE(144)] = 9684, - [SMALL_STATE(145)] = 9722, - [SMALL_STATE(146)] = 9756, - [SMALL_STATE(147)] = 9796, - [SMALL_STATE(148)] = 9830, - [SMALL_STATE(149)] = 9870, - [SMALL_STATE(150)] = 9904, - [SMALL_STATE(151)] = 9942, - [SMALL_STATE(152)] = 9976, - [SMALL_STATE(153)] = 10010, - [SMALL_STATE(154)] = 10044, - [SMALL_STATE(155)] = 10078, - [SMALL_STATE(156)] = 10118, - [SMALL_STATE(157)] = 10152, - [SMALL_STATE(158)] = 10186, - [SMALL_STATE(159)] = 10224, - [SMALL_STATE(160)] = 10258, - [SMALL_STATE(161)] = 10292, - [SMALL_STATE(162)] = 10332, - [SMALL_STATE(163)] = 10366, - [SMALL_STATE(164)] = 10400, - [SMALL_STATE(165)] = 10434, - [SMALL_STATE(166)] = 10468, - [SMALL_STATE(167)] = 10506, - [SMALL_STATE(168)] = 10540, + [SMALL_STATE(141)] = 9586, + [SMALL_STATE(142)] = 9620, + [SMALL_STATE(143)] = 9654, + [SMALL_STATE(144)] = 9688, + [SMALL_STATE(145)] = 9726, + [SMALL_STATE(146)] = 9760, + [SMALL_STATE(147)] = 9794, + [SMALL_STATE(148)] = 9828, + [SMALL_STATE(149)] = 9862, + [SMALL_STATE(150)] = 9896, + [SMALL_STATE(151)] = 9930, + [SMALL_STATE(152)] = 9964, + [SMALL_STATE(153)] = 9998, + [SMALL_STATE(154)] = 10032, + [SMALL_STATE(155)] = 10066, + [SMALL_STATE(156)] = 10100, + [SMALL_STATE(157)] = 10134, + [SMALL_STATE(158)] = 10174, + [SMALL_STATE(159)] = 10208, + [SMALL_STATE(160)] = 10242, + [SMALL_STATE(161)] = 10276, + [SMALL_STATE(162)] = 10314, + [SMALL_STATE(163)] = 10354, + [SMALL_STATE(164)] = 10388, + [SMALL_STATE(165)] = 10426, + [SMALL_STATE(166)] = 10460, + [SMALL_STATE(167)] = 10498, + [SMALL_STATE(168)] = 10534, [SMALL_STATE(169)] = 10574, [SMALL_STATE(170)] = 10609, [SMALL_STATE(171)] = 10646, [SMALL_STATE(172)] = 10683, [SMALL_STATE(173)] = 10720, - [SMALL_STATE(174)] = 10773, - [SMALL_STATE(175)] = 10808, - [SMALL_STATE(176)] = 10843, - [SMALL_STATE(177)] = 10874, - [SMALL_STATE(178)] = 10909, - [SMALL_STATE(179)] = 10944, - [SMALL_STATE(180)] = 10979, - [SMALL_STATE(181)] = 11014, - [SMALL_STATE(182)] = 11049, - [SMALL_STATE(183)] = 11084, - [SMALL_STATE(184)] = 11119, - [SMALL_STATE(185)] = 11154, - [SMALL_STATE(186)] = 11189, + [SMALL_STATE(174)] = 10755, + [SMALL_STATE(175)] = 10790, + [SMALL_STATE(176)] = 10825, + [SMALL_STATE(177)] = 10860, + [SMALL_STATE(178)] = 10895, + [SMALL_STATE(179)] = 10930, + [SMALL_STATE(180)] = 10965, + [SMALL_STATE(181)] = 11000, + [SMALL_STATE(182)] = 11031, + [SMALL_STATE(183)] = 11066, + [SMALL_STATE(184)] = 11097, + [SMALL_STATE(185)] = 11132, + [SMALL_STATE(186)] = 11185, [SMALL_STATE(187)] = 11220, [SMALL_STATE(188)] = 11248, [SMALL_STATE(189)] = 11276, - [SMALL_STATE(190)] = 11308, - [SMALL_STATE(191)] = 11336, - [SMALL_STATE(192)] = 11364, - [SMALL_STATE(193)] = 11392, - [SMALL_STATE(194)] = 11424, - [SMALL_STATE(195)] = 11452, - [SMALL_STATE(196)] = 11484, - [SMALL_STATE(197)] = 11516, - [SMALL_STATE(198)] = 11544, - [SMALL_STATE(199)] = 11572, - [SMALL_STATE(200)] = 11600, - [SMALL_STATE(201)] = 11628, - [SMALL_STATE(202)] = 11656, - [SMALL_STATE(203)] = 11684, - [SMALL_STATE(204)] = 11712, - [SMALL_STATE(205)] = 11740, - [SMALL_STATE(206)] = 11768, - [SMALL_STATE(207)] = 11796, - [SMALL_STATE(208)] = 11824, + [SMALL_STATE(190)] = 11304, + [SMALL_STATE(191)] = 11332, + [SMALL_STATE(192)] = 11360, + [SMALL_STATE(193)] = 11388, + [SMALL_STATE(194)] = 11416, + [SMALL_STATE(195)] = 11444, + [SMALL_STATE(196)] = 11472, + [SMALL_STATE(197)] = 11500, + [SMALL_STATE(198)] = 11528, + [SMALL_STATE(199)] = 11556, + [SMALL_STATE(200)] = 11584, + [SMALL_STATE(201)] = 11612, + [SMALL_STATE(202)] = 11640, + [SMALL_STATE(203)] = 11672, + [SMALL_STATE(204)] = 11700, + [SMALL_STATE(205)] = 11728, + [SMALL_STATE(206)] = 11760, + [SMALL_STATE(207)] = 11792, + [SMALL_STATE(208)] = 11820, [SMALL_STATE(209)] = 11852, [SMALL_STATE(210)] = 11881, [SMALL_STATE(211)] = 11910, [SMALL_STATE(212)] = 11939, [SMALL_STATE(213)] = 11965, - [SMALL_STATE(214)] = 12011, - [SMALL_STATE(215)] = 12037, - [SMALL_STATE(216)] = 12063, - [SMALL_STATE(217)] = 12089, - [SMALL_STATE(218)] = 12115, - [SMALL_STATE(219)] = 12141, - [SMALL_STATE(220)] = 12167, - [SMALL_STATE(221)] = 12193, - [SMALL_STATE(222)] = 12219, - [SMALL_STATE(223)] = 12245, - [SMALL_STATE(224)] = 12271, - [SMALL_STATE(225)] = 12317, - [SMALL_STATE(226)] = 12343, - [SMALL_STATE(227)] = 12369, + [SMALL_STATE(214)] = 11991, + [SMALL_STATE(215)] = 12017, + [SMALL_STATE(216)] = 12043, + [SMALL_STATE(217)] = 12069, + [SMALL_STATE(218)] = 12095, + [SMALL_STATE(219)] = 12121, + [SMALL_STATE(220)] = 12147, + [SMALL_STATE(221)] = 12173, + [SMALL_STATE(222)] = 12199, + [SMALL_STATE(223)] = 12225, + [SMALL_STATE(224)] = 12251, + [SMALL_STATE(225)] = 12277, + [SMALL_STATE(226)] = 12303, + [SMALL_STATE(227)] = 12349, [SMALL_STATE(228)] = 12395, - [SMALL_STATE(229)] = 12441, + [SMALL_STATE(229)] = 12421, [SMALL_STATE(230)] = 12467, [SMALL_STATE(231)] = 12493, [SMALL_STATE(232)] = 12519, @@ -18871,300 +18875,296 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(239)] = 12747, [SMALL_STATE(240)] = 12784, [SMALL_STATE(241)] = 12805, - [SMALL_STATE(242)] = 12828, - [SMALL_STATE(243)] = 12865, - [SMALL_STATE(244)] = 12884, - [SMALL_STATE(245)] = 12905, - [SMALL_STATE(246)] = 12942, - [SMALL_STATE(247)] = 12979, + [SMALL_STATE(242)] = 12842, + [SMALL_STATE(243)] = 12879, + [SMALL_STATE(244)] = 12900, + [SMALL_STATE(245)] = 12919, + [SMALL_STATE(246)] = 12940, + [SMALL_STATE(247)] = 12963, [SMALL_STATE(248)] = 13000, - [SMALL_STATE(249)] = 13037, - [SMALL_STATE(250)] = 13074, - [SMALL_STATE(251)] = 13107, + [SMALL_STATE(249)] = 13033, + [SMALL_STATE(250)] = 13054, + [SMALL_STATE(251)] = 13091, [SMALL_STATE(252)] = 13128, [SMALL_STATE(253)] = 13146, - [SMALL_STATE(254)] = 13168, - [SMALL_STATE(255)] = 13184, - [SMALL_STATE(256)] = 13204, - [SMALL_STATE(257)] = 13226, + [SMALL_STATE(254)] = 13166, + [SMALL_STATE(255)] = 13182, + [SMALL_STATE(256)] = 13202, + [SMALL_STATE(257)] = 13224, [SMALL_STATE(258)] = 13246, - [SMALL_STATE(259)] = 13262, - [SMALL_STATE(260)] = 13278, + [SMALL_STATE(259)] = 13268, + [SMALL_STATE(260)] = 13284, [SMALL_STATE(261)] = 13300, [SMALL_STATE(262)] = 13317, [SMALL_STATE(263)] = 13334, [SMALL_STATE(264)] = 13351, [SMALL_STATE(265)] = 13368, [SMALL_STATE(266)] = 13384, - [SMALL_STATE(267)] = 13400, - [SMALL_STATE(268)] = 13426, - [SMALL_STATE(269)] = 13454, - [SMALL_STATE(270)] = 13470, - [SMALL_STATE(271)] = 13486, - [SMALL_STATE(272)] = 13514, - [SMALL_STATE(273)] = 13530, - [SMALL_STATE(274)] = 13546, - [SMALL_STATE(275)] = 13562, - [SMALL_STATE(276)] = 13578, - [SMALL_STATE(277)] = 13602, - [SMALL_STATE(278)] = 13630, - [SMALL_STATE(279)] = 13656, - [SMALL_STATE(280)] = 13672, - [SMALL_STATE(281)] = 13698, - [SMALL_STATE(282)] = 13720, - [SMALL_STATE(283)] = 13742, - [SMALL_STATE(284)] = 13768, - [SMALL_STATE(285)] = 13790, - [SMALL_STATE(286)] = 13806, - [SMALL_STATE(287)] = 13826, - [SMALL_STATE(288)] = 13848, - [SMALL_STATE(289)] = 13866, - [SMALL_STATE(290)] = 13882, - [SMALL_STATE(291)] = 13898, - [SMALL_STATE(292)] = 13914, - [SMALL_STATE(293)] = 13930, - [SMALL_STATE(294)] = 13946, + [SMALL_STATE(267)] = 13406, + [SMALL_STATE(268)] = 13422, + [SMALL_STATE(269)] = 13440, + [SMALL_STATE(270)] = 13460, + [SMALL_STATE(271)] = 13482, + [SMALL_STATE(272)] = 13506, + [SMALL_STATE(273)] = 13532, + [SMALL_STATE(274)] = 13548, + [SMALL_STATE(275)] = 13564, + [SMALL_STATE(276)] = 13580, + [SMALL_STATE(277)] = 13596, + [SMALL_STATE(278)] = 13612, + [SMALL_STATE(279)] = 13628, + [SMALL_STATE(280)] = 13644, + [SMALL_STATE(281)] = 13670, + [SMALL_STATE(282)] = 13696, + [SMALL_STATE(283)] = 13712, + [SMALL_STATE(284)] = 13728, + [SMALL_STATE(285)] = 13744, + [SMALL_STATE(286)] = 13772, + [SMALL_STATE(287)] = 13798, + [SMALL_STATE(288)] = 13826, + [SMALL_STATE(289)] = 13842, + [SMALL_STATE(290)] = 13858, + [SMALL_STATE(291)] = 13874, + [SMALL_STATE(292)] = 13902, + [SMALL_STATE(293)] = 13918, + [SMALL_STATE(294)] = 13940, [SMALL_STATE(295)] = 13962, [SMALL_STATE(296)] = 13978, [SMALL_STATE(297)] = 13994, [SMALL_STATE(298)] = 14010, [SMALL_STATE(299)] = 14026, - [SMALL_STATE(300)] = 14049, - [SMALL_STATE(301)] = 14072, - [SMALL_STATE(302)] = 14095, + [SMALL_STATE(300)] = 14051, + [SMALL_STATE(301)] = 14074, + [SMALL_STATE(302)] = 14097, [SMALL_STATE(303)] = 14120, [SMALL_STATE(304)] = 14143, [SMALL_STATE(305)] = 14166, [SMALL_STATE(306)] = 14189, [SMALL_STATE(307)] = 14212, - [SMALL_STATE(308)] = 14224, - [SMALL_STATE(309)] = 14246, - [SMALL_STATE(310)] = 14268, - [SMALL_STATE(311)] = 14290, - [SMALL_STATE(312)] = 14306, - [SMALL_STATE(313)] = 14328, - [SMALL_STATE(314)] = 14344, - [SMALL_STATE(315)] = 14366, - [SMALL_STATE(316)] = 14388, - [SMALL_STATE(317)] = 14404, - [SMALL_STATE(318)] = 14416, - [SMALL_STATE(319)] = 14438, - [SMALL_STATE(320)] = 14456, + [SMALL_STATE(308)] = 14234, + [SMALL_STATE(309)] = 14256, + [SMALL_STATE(310)] = 14276, + [SMALL_STATE(311)] = 14296, + [SMALL_STATE(312)] = 14312, + [SMALL_STATE(313)] = 14332, + [SMALL_STATE(314)] = 14352, + [SMALL_STATE(315)] = 14370, + [SMALL_STATE(316)] = 14392, + [SMALL_STATE(317)] = 14414, + [SMALL_STATE(318)] = 14426, + [SMALL_STATE(319)] = 14442, + [SMALL_STATE(320)] = 14454, [SMALL_STATE(321)] = 14476, - [SMALL_STATE(322)] = 14496, - [SMALL_STATE(323)] = 14516, + [SMALL_STATE(322)] = 14498, + [SMALL_STATE(323)] = 14514, [SMALL_STATE(324)] = 14536, [SMALL_STATE(325)] = 14558, [SMALL_STATE(326)] = 14580, - [SMALL_STATE(327)] = 14597, - [SMALL_STATE(328)] = 14610, - [SMALL_STATE(329)] = 14627, - [SMALL_STATE(330)] = 14646, - [SMALL_STATE(331)] = 14665, + [SMALL_STATE(327)] = 14599, + [SMALL_STATE(328)] = 14618, + [SMALL_STATE(329)] = 14637, + [SMALL_STATE(330)] = 14656, + [SMALL_STATE(331)] = 14673, [SMALL_STATE(332)] = 14684, - [SMALL_STATE(333)] = 14695, - [SMALL_STATE(334)] = 14706, - [SMALL_STATE(335)] = 14725, + [SMALL_STATE(333)] = 14697, + [SMALL_STATE(334)] = 14714, + [SMALL_STATE(335)] = 14731, [SMALL_STATE(336)] = 14742, - [SMALL_STATE(337)] = 14752, - [SMALL_STATE(338)] = 14766, - [SMALL_STATE(339)] = 14776, - [SMALL_STATE(340)] = 14792, - [SMALL_STATE(341)] = 14802, - [SMALL_STATE(342)] = 14818, - [SMALL_STATE(343)] = 14834, - [SMALL_STATE(344)] = 14850, - [SMALL_STATE(345)] = 14864, - [SMALL_STATE(346)] = 14878, - [SMALL_STATE(347)] = 14892, - [SMALL_STATE(348)] = 14906, - [SMALL_STATE(349)] = 14922, - [SMALL_STATE(350)] = 14938, - [SMALL_STATE(351)] = 14948, - [SMALL_STATE(352)] = 14962, - [SMALL_STATE(353)] = 14976, - [SMALL_STATE(354)] = 14992, - [SMALL_STATE(355)] = 15006, - [SMALL_STATE(356)] = 15020, - [SMALL_STATE(357)] = 15030, - [SMALL_STATE(358)] = 15044, - [SMALL_STATE(359)] = 15060, - [SMALL_STATE(360)] = 15076, - [SMALL_STATE(361)] = 15092, - [SMALL_STATE(362)] = 15106, - [SMALL_STATE(363)] = 15120, - [SMALL_STATE(364)] = 15134, - [SMALL_STATE(365)] = 15144, - [SMALL_STATE(366)] = 15154, - [SMALL_STATE(367)] = 15170, - [SMALL_STATE(368)] = 15180, - [SMALL_STATE(369)] = 15194, - [SMALL_STATE(370)] = 15208, - [SMALL_STATE(371)] = 15222, - [SMALL_STATE(372)] = 15238, - [SMALL_STATE(373)] = 15248, - [SMALL_STATE(374)] = 15264, - [SMALL_STATE(375)] = 15280, - [SMALL_STATE(376)] = 15290, - [SMALL_STATE(377)] = 15306, - [SMALL_STATE(378)] = 15322, - [SMALL_STATE(379)] = 15338, - [SMALL_STATE(380)] = 15354, - [SMALL_STATE(381)] = 15370, - [SMALL_STATE(382)] = 15380, - [SMALL_STATE(383)] = 15394, - [SMALL_STATE(384)] = 15407, - [SMALL_STATE(385)] = 15420, - [SMALL_STATE(386)] = 15433, - [SMALL_STATE(387)] = 15442, - [SMALL_STATE(388)] = 15455, - [SMALL_STATE(389)] = 15468, - [SMALL_STATE(390)] = 15481, - [SMALL_STATE(391)] = 15494, - [SMALL_STATE(392)] = 15507, - [SMALL_STATE(393)] = 15520, - [SMALL_STATE(394)] = 15533, - [SMALL_STATE(395)] = 15546, - [SMALL_STATE(396)] = 15559, - [SMALL_STATE(397)] = 15572, - [SMALL_STATE(398)] = 15585, - [SMALL_STATE(399)] = 15598, - [SMALL_STATE(400)] = 15611, - [SMALL_STATE(401)] = 15624, - [SMALL_STATE(402)] = 15637, - [SMALL_STATE(403)] = 15650, - [SMALL_STATE(404)] = 15663, - [SMALL_STATE(405)] = 15676, - [SMALL_STATE(406)] = 15689, - [SMALL_STATE(407)] = 15702, - [SMALL_STATE(408)] = 15715, - [SMALL_STATE(409)] = 15728, - [SMALL_STATE(410)] = 15741, - [SMALL_STATE(411)] = 15754, - [SMALL_STATE(412)] = 15767, - [SMALL_STATE(413)] = 15780, - [SMALL_STATE(414)] = 15793, - [SMALL_STATE(415)] = 15806, - [SMALL_STATE(416)] = 15819, - [SMALL_STATE(417)] = 15832, - [SMALL_STATE(418)] = 15845, - [SMALL_STATE(419)] = 15858, - [SMALL_STATE(420)] = 15871, - [SMALL_STATE(421)] = 15884, - [SMALL_STATE(422)] = 15893, - [SMALL_STATE(423)] = 15906, - [SMALL_STATE(424)] = 15919, - [SMALL_STATE(425)] = 15932, - [SMALL_STATE(426)] = 15945, - [SMALL_STATE(427)] = 15955, - [SMALL_STATE(428)] = 15965, - [SMALL_STATE(429)] = 15975, - [SMALL_STATE(430)] = 15985, - [SMALL_STATE(431)] = 15995, - [SMALL_STATE(432)] = 16005, - [SMALL_STATE(433)] = 16015, - [SMALL_STATE(434)] = 16025, - [SMALL_STATE(435)] = 16035, - [SMALL_STATE(436)] = 16045, - [SMALL_STATE(437)] = 16053, - [SMALL_STATE(438)] = 16063, - [SMALL_STATE(439)] = 16071, - [SMALL_STATE(440)] = 16081, - [SMALL_STATE(441)] = 16089, - [SMALL_STATE(442)] = 16097, - [SMALL_STATE(443)] = 16105, - [SMALL_STATE(444)] = 16115, - [SMALL_STATE(445)] = 16125, - [SMALL_STATE(446)] = 16133, - [SMALL_STATE(447)] = 16143, - [SMALL_STATE(448)] = 16153, - [SMALL_STATE(449)] = 16163, - [SMALL_STATE(450)] = 16173, - [SMALL_STATE(451)] = 16181, - [SMALL_STATE(452)] = 16191, - [SMALL_STATE(453)] = 16201, - [SMALL_STATE(454)] = 16209, - [SMALL_STATE(455)] = 16219, - [SMALL_STATE(456)] = 16229, - [SMALL_STATE(457)] = 16239, - [SMALL_STATE(458)] = 16247, - [SMALL_STATE(459)] = 16257, - [SMALL_STATE(460)] = 16267, - [SMALL_STATE(461)] = 16274, - [SMALL_STATE(462)] = 16281, - [SMALL_STATE(463)] = 16288, - [SMALL_STATE(464)] = 16295, - [SMALL_STATE(465)] = 16302, - [SMALL_STATE(466)] = 16309, - [SMALL_STATE(467)] = 16316, - [SMALL_STATE(468)] = 16323, - [SMALL_STATE(469)] = 16330, - [SMALL_STATE(470)] = 16337, - [SMALL_STATE(471)] = 16344, - [SMALL_STATE(472)] = 16351, - [SMALL_STATE(473)] = 16358, - [SMALL_STATE(474)] = 16365, - [SMALL_STATE(475)] = 16372, - [SMALL_STATE(476)] = 16379, - [SMALL_STATE(477)] = 16386, - [SMALL_STATE(478)] = 16393, - [SMALL_STATE(479)] = 16400, - [SMALL_STATE(480)] = 16407, - [SMALL_STATE(481)] = 16414, - [SMALL_STATE(482)] = 16421, - [SMALL_STATE(483)] = 16428, - [SMALL_STATE(484)] = 16435, - [SMALL_STATE(485)] = 16442, - [SMALL_STATE(486)] = 16449, - [SMALL_STATE(487)] = 16456, - [SMALL_STATE(488)] = 16463, - [SMALL_STATE(489)] = 16470, - [SMALL_STATE(490)] = 16477, - [SMALL_STATE(491)] = 16484, - [SMALL_STATE(492)] = 16491, - [SMALL_STATE(493)] = 16498, - [SMALL_STATE(494)] = 16505, - [SMALL_STATE(495)] = 16512, - [SMALL_STATE(496)] = 16519, - [SMALL_STATE(497)] = 16526, - [SMALL_STATE(498)] = 16533, - [SMALL_STATE(499)] = 16540, - [SMALL_STATE(500)] = 16547, - [SMALL_STATE(501)] = 16554, - [SMALL_STATE(502)] = 16561, - [SMALL_STATE(503)] = 16568, - [SMALL_STATE(504)] = 16575, - [SMALL_STATE(505)] = 16582, - [SMALL_STATE(506)] = 16589, - [SMALL_STATE(507)] = 16596, - [SMALL_STATE(508)] = 16603, - [SMALL_STATE(509)] = 16610, - [SMALL_STATE(510)] = 16617, - [SMALL_STATE(511)] = 16624, - [SMALL_STATE(512)] = 16631, - [SMALL_STATE(513)] = 16638, - [SMALL_STATE(514)] = 16645, - [SMALL_STATE(515)] = 16652, - [SMALL_STATE(516)] = 16659, - [SMALL_STATE(517)] = 16666, - [SMALL_STATE(518)] = 16673, - [SMALL_STATE(519)] = 16680, - [SMALL_STATE(520)] = 16687, - [SMALL_STATE(521)] = 16694, - [SMALL_STATE(522)] = 16701, - [SMALL_STATE(523)] = 16708, - [SMALL_STATE(524)] = 16715, - [SMALL_STATE(525)] = 16722, - [SMALL_STATE(526)] = 16729, - [SMALL_STATE(527)] = 16736, - [SMALL_STATE(528)] = 16743, - [SMALL_STATE(529)] = 16750, - [SMALL_STATE(530)] = 16757, - [SMALL_STATE(531)] = 16764, - [SMALL_STATE(532)] = 16771, - [SMALL_STATE(533)] = 16778, - [SMALL_STATE(534)] = 16785, - [SMALL_STATE(535)] = 16792, + [SMALL_STATE(337)] = 14756, + [SMALL_STATE(338)] = 14772, + [SMALL_STATE(339)] = 14788, + [SMALL_STATE(340)] = 14804, + [SMALL_STATE(341)] = 14820, + [SMALL_STATE(342)] = 14836, + [SMALL_STATE(343)] = 14852, + [SMALL_STATE(344)] = 14862, + [SMALL_STATE(345)] = 14872, + [SMALL_STATE(346)] = 14888, + [SMALL_STATE(347)] = 14904, + [SMALL_STATE(348)] = 14914, + [SMALL_STATE(349)] = 14930, + [SMALL_STATE(350)] = 14944, + [SMALL_STATE(351)] = 14954, + [SMALL_STATE(352)] = 14970, + [SMALL_STATE(353)] = 14986, + [SMALL_STATE(354)] = 14996, + [SMALL_STATE(355)] = 15012, + [SMALL_STATE(356)] = 15022, + [SMALL_STATE(357)] = 15036, + [SMALL_STATE(358)] = 15052, + [SMALL_STATE(359)] = 15068, + [SMALL_STATE(360)] = 15084, + [SMALL_STATE(361)] = 15100, + [SMALL_STATE(362)] = 15114, + [SMALL_STATE(363)] = 15124, + [SMALL_STATE(364)] = 15140, + [SMALL_STATE(365)] = 15154, + [SMALL_STATE(366)] = 15168, + [SMALL_STATE(367)] = 15182, + [SMALL_STATE(368)] = 15196, + [SMALL_STATE(369)] = 15210, + [SMALL_STATE(370)] = 15224, + [SMALL_STATE(371)] = 15238, + [SMALL_STATE(372)] = 15254, + [SMALL_STATE(373)] = 15268, + [SMALL_STATE(374)] = 15278, + [SMALL_STATE(375)] = 15292, + [SMALL_STATE(376)] = 15306, + [SMALL_STATE(377)] = 15322, + [SMALL_STATE(378)] = 15338, + [SMALL_STATE(379)] = 15354, + [SMALL_STATE(380)] = 15364, + [SMALL_STATE(381)] = 15378, + [SMALL_STATE(382)] = 15392, + [SMALL_STATE(383)] = 15402, + [SMALL_STATE(384)] = 15412, + [SMALL_STATE(385)] = 15426, + [SMALL_STATE(386)] = 15439, + [SMALL_STATE(387)] = 15452, + [SMALL_STATE(388)] = 15465, + [SMALL_STATE(389)] = 15478, + [SMALL_STATE(390)] = 15491, + [SMALL_STATE(391)] = 15500, + [SMALL_STATE(392)] = 15513, + [SMALL_STATE(393)] = 15526, + [SMALL_STATE(394)] = 15539, + [SMALL_STATE(395)] = 15552, + [SMALL_STATE(396)] = 15565, + [SMALL_STATE(397)] = 15578, + [SMALL_STATE(398)] = 15591, + [SMALL_STATE(399)] = 15604, + [SMALL_STATE(400)] = 15617, + [SMALL_STATE(401)] = 15630, + [SMALL_STATE(402)] = 15639, + [SMALL_STATE(403)] = 15652, + [SMALL_STATE(404)] = 15665, + [SMALL_STATE(405)] = 15678, + [SMALL_STATE(406)] = 15691, + [SMALL_STATE(407)] = 15704, + [SMALL_STATE(408)] = 15717, + [SMALL_STATE(409)] = 15730, + [SMALL_STATE(410)] = 15743, + [SMALL_STATE(411)] = 15756, + [SMALL_STATE(412)] = 15769, + [SMALL_STATE(413)] = 15782, + [SMALL_STATE(414)] = 15795, + [SMALL_STATE(415)] = 15808, + [SMALL_STATE(416)] = 15821, + [SMALL_STATE(417)] = 15834, + [SMALL_STATE(418)] = 15847, + [SMALL_STATE(419)] = 15860, + [SMALL_STATE(420)] = 15873, + [SMALL_STATE(421)] = 15886, + [SMALL_STATE(422)] = 15899, + [SMALL_STATE(423)] = 15912, + [SMALL_STATE(424)] = 15925, + [SMALL_STATE(425)] = 15938, + [SMALL_STATE(426)] = 15951, + [SMALL_STATE(427)] = 15959, + [SMALL_STATE(428)] = 15969, + [SMALL_STATE(429)] = 15979, + [SMALL_STATE(430)] = 15989, + [SMALL_STATE(431)] = 15999, + [SMALL_STATE(432)] = 16009, + [SMALL_STATE(433)] = 16019, + [SMALL_STATE(434)] = 16029, + [SMALL_STATE(435)] = 16039, + [SMALL_STATE(436)] = 16049, + [SMALL_STATE(437)] = 16059, + [SMALL_STATE(438)] = 16069, + [SMALL_STATE(439)] = 16077, + [SMALL_STATE(440)] = 16085, + [SMALL_STATE(441)] = 16093, + [SMALL_STATE(442)] = 16103, + [SMALL_STATE(443)] = 16111, + [SMALL_STATE(444)] = 16119, + [SMALL_STATE(445)] = 16127, + [SMALL_STATE(446)] = 16137, + [SMALL_STATE(447)] = 16147, + [SMALL_STATE(448)] = 16157, + [SMALL_STATE(449)] = 16165, + [SMALL_STATE(450)] = 16175, + [SMALL_STATE(451)] = 16185, + [SMALL_STATE(452)] = 16195, + [SMALL_STATE(453)] = 16205, + [SMALL_STATE(454)] = 16215, + [SMALL_STATE(455)] = 16223, + [SMALL_STATE(456)] = 16233, + [SMALL_STATE(457)] = 16243, + [SMALL_STATE(458)] = 16253, + [SMALL_STATE(459)] = 16263, + [SMALL_STATE(460)] = 16273, + [SMALL_STATE(461)] = 16280, + [SMALL_STATE(462)] = 16287, + [SMALL_STATE(463)] = 16294, + [SMALL_STATE(464)] = 16301, + [SMALL_STATE(465)] = 16308, + [SMALL_STATE(466)] = 16315, + [SMALL_STATE(467)] = 16322, + [SMALL_STATE(468)] = 16329, + [SMALL_STATE(469)] = 16336, + [SMALL_STATE(470)] = 16343, + [SMALL_STATE(471)] = 16350, + [SMALL_STATE(472)] = 16357, + [SMALL_STATE(473)] = 16364, + [SMALL_STATE(474)] = 16371, + [SMALL_STATE(475)] = 16378, + [SMALL_STATE(476)] = 16385, + [SMALL_STATE(477)] = 16392, + [SMALL_STATE(478)] = 16399, + [SMALL_STATE(479)] = 16406, + [SMALL_STATE(480)] = 16413, + [SMALL_STATE(481)] = 16420, + [SMALL_STATE(482)] = 16427, + [SMALL_STATE(483)] = 16434, + [SMALL_STATE(484)] = 16441, + [SMALL_STATE(485)] = 16448, + [SMALL_STATE(486)] = 16455, + [SMALL_STATE(487)] = 16462, + [SMALL_STATE(488)] = 16469, + [SMALL_STATE(489)] = 16476, + [SMALL_STATE(490)] = 16483, + [SMALL_STATE(491)] = 16490, + [SMALL_STATE(492)] = 16497, + [SMALL_STATE(493)] = 16504, + [SMALL_STATE(494)] = 16511, + [SMALL_STATE(495)] = 16518, + [SMALL_STATE(496)] = 16525, + [SMALL_STATE(497)] = 16532, + [SMALL_STATE(498)] = 16539, + [SMALL_STATE(499)] = 16546, + [SMALL_STATE(500)] = 16553, + [SMALL_STATE(501)] = 16560, + [SMALL_STATE(502)] = 16567, + [SMALL_STATE(503)] = 16574, + [SMALL_STATE(504)] = 16581, + [SMALL_STATE(505)] = 16588, + [SMALL_STATE(506)] = 16595, + [SMALL_STATE(507)] = 16602, + [SMALL_STATE(508)] = 16609, + [SMALL_STATE(509)] = 16616, + [SMALL_STATE(510)] = 16623, + [SMALL_STATE(511)] = 16630, + [SMALL_STATE(512)] = 16637, + [SMALL_STATE(513)] = 16644, + [SMALL_STATE(514)] = 16651, + [SMALL_STATE(515)] = 16658, + [SMALL_STATE(516)] = 16665, + [SMALL_STATE(517)] = 16672, + [SMALL_STATE(518)] = 16679, + [SMALL_STATE(519)] = 16686, + [SMALL_STATE(520)] = 16693, + [SMALL_STATE(521)] = 16700, + [SMALL_STATE(522)] = 16707, + [SMALL_STATE(523)] = 16714, + [SMALL_STATE(524)] = 16721, + [SMALL_STATE(525)] = 16728, + [SMALL_STATE(526)] = 16735, + [SMALL_STATE(527)] = 16742, + [SMALL_STATE(528)] = 16749, + [SMALL_STATE(529)] = 16756, + [SMALL_STATE(530)] = 16763, + [SMALL_STATE(531)] = 16770, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -19172,561 +19172,558 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(100), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(92), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(532), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(111), - [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), - [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(37), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(107), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(113), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(530), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(114), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), + [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(29), [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(463), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(534), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), - [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), - [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_positionals, 3), - [91] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_required_positionals, 3), - [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), - [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305), - [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), - [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), - [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), - [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), - [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), - [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), - [117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), - [119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_positionals, 2), - [121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_required_positionals, 2), - [123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), - [127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(290), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(531), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_positionals, 2), + [91] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_required_positionals, 2), + [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_positionals, 3), + [95] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_required_positionals, 3), + [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), + [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305), + [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), + [115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), + [117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), + [123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), + [127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), [129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trailing_positionals, 3), [131] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trailing_positionals, 3), [133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trailing_positionals, 2), [135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trailing_positionals, 2), - [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(503), - [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(126), - [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), - [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), - [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), - [171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), - [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), - [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), - [191] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(439), - [194] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(498), - [197] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(376), - [200] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(338), - [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), - [205] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(342), - [208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(330), - [211] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(331), - [214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(418), - [217] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(327), - [220] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(500), - [223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(323), - [226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(322), - [229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(320), - [232] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(412), - [235] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(506), - [238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), - [252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(463), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(133), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), + [171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), + [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [195] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(459), + [198] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(510), + [201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(340), + [204] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(343), + [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), + [209] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(358), + [212] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(328), + [215] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(327), + [218] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(417), + [221] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(332), + [224] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(482), + [227] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(309), + [230] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(310), + [233] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(312), + [236] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(348), + [239] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 2), SHIFT_REPEAT(460), + [242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_name, 1), [256] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_name, 1), - [258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_name, 2), [262] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_name, 2), - [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), - [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_type, 1), - [268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_type, 1), + [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_type, 1), + [268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_type, 1), [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_type, 1), [274] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_type, 1), - [276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_type, 1), - [278] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_type, 1), - [280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_name, 1), - [282] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_name, 1), - [284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_type, 1), - [286] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_type, 1), - [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proc, 3), - [290] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proc, 3), - [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 4, .production_id = 15), - [300] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 4, .production_id = 15), - [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 3), - [304] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 3), - [306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1), - [308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter, 1), - [310] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), - [312] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 5), - [314] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 5), - [316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 5, .production_id = 15), - [318] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 5, .production_id = 15), - [320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_name, 1), - [322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_name, 1), - [324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_name, 2), - [326] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_name, 2), - [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 3), - [330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 3), - [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proc, 5), - [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proc, 5), - [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_name, 2), - [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_name, 2), - [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), - [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), - [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 3, .production_id = 11), - [346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 3, .production_id = 11), - [348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_type, 3), - [350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_type, 3), - [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 4), - [354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 4), - [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proc, 6), - [358] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proc, 6), - [360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), - [364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 4, .production_id = 11), - [366] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 4, .production_id = 11), - [368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_intersection_type, 3), - [370] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_intersection_type, 3), - [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singleton_type, 4), - [374] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singleton_type, 4), + [276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_type, 1), + [278] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_type, 1), + [280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_intersection_type, 3, .production_id = 14), + [282] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_intersection_type, 3, .production_id = 14), + [284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_type, 3, .production_id = 14), + [288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_type, 3, .production_id = 14), + [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proc, 6), + [294] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proc, 6), + [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_name, 1), + [300] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_name, 1), + [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 3, .production_id = 13), + [304] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 3, .production_id = 13), + [306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 4), + [308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 4), + [310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 3), + [312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 3), + [314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_type, 2), + [316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_type, 2), + [318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_type, 2), + [320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_type, 2), + [322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1), + [324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter, 1), + [326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), + [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proc, 5), + [330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proc, 5), + [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proc, 3), + [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proc, 3), + [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 5, .production_id = 18), + [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 5, .production_id = 18), + [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_type, 2), + [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_type, 2), + [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 5), + [346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 5), + [348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_name, 1), + [350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_name, 1), + [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_type, 2), + [354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_type, 2), + [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 3), + [358] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 3), + [360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_name, 2), + [362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_name, 2), + [364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_name, 2), + [366] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_name, 2), + [368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_type, 1), + [370] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_type, 1), + [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), + [374] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), [376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proc, 4), [378] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proc, 4), - [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 2), - [382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 2), - [384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 2), - [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 2), + [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), + [382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), + [384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singleton_type, 4), + [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singleton_type, 4), [388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 4), [390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 4), [392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), [394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2), - [396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_type, 2), - [398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_type, 2), - [400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_type, 2), - [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_type, 2), - [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_type, 2), - [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_type, 2), - [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_type, 2), - [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_type, 2), - [412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_positionals, 2), - [414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_positionals, 2), - [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_positionals, 1), - [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_required_positionals, 1), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_optional_positionals_repeat1, 2), - [428] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_optional_positionals_repeat1, 2), - [430] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_optional_positionals_repeat1, 2), SHIFT_REPEAT(533), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_positionals, 3), - [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_positionals, 3), - [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 2), + [398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 2), + [400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 4, .production_id = 18), + [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 4, .production_id = 18), + [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 2), + [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 2), + [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 4, .production_id = 13), + [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 4, .production_id = 13), + [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_positionals, 2), + [416] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_positionals, 2), + [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_optional_positionals_repeat1, 2), + [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_optional_positionals_repeat1, 2), + [424] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_optional_positionals_repeat1, 2), SHIFT_REPEAT(504), + [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_positionals, 3), + [431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_positionals, 3), + [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_positionals, 1), + [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_required_positionals, 1), + [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), [441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_required_positionals_repeat1, 2), [443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_required_positionals_repeat1, 2), - [445] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_required_positionals_repeat1, 2), SHIFT_REPEAT(33), + [445] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_required_positionals_repeat1, 2), SHIFT_REPEAT(23), [448] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2), [450] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter, 2), [452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_optional_positionals_repeat1, 3), [454] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_optional_positionals_repeat1, 3), - [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_rest_positional, 2), - [464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_rest_positional, 2), - [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [468] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_positionals, 4), - [470] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_positionals, 4), - [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [464] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_positionals, 4), + [466] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional_positionals, 4), + [468] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_rest_positional, 2), + [470] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_rest_positional, 2), + [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), [474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_rest_positional, 3), [476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_rest_positional, 3), - [478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 4), - [480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_decl, 3), - [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 5), - [484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1), - [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 4), - [488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 1), - [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameters, 3), - [494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_type_parameters, 3), - [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ivar_member, 5), - [498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ivar_member, 3), - [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 8), - [502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type, 2), - [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type, 4), - [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 6), - [508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type, 3), - [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 7), - [512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 5), - [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameters, 4), - [516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_type_parameters, 4), - [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_alias_decl, 4), - [520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 6, .production_id = 13), - [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_superclass, 2), - [524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 4), - [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 5, .production_id = 9), - [528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 5, .production_id = 2), - [530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_member, 2), - [532] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 5, .production_id = 10), - [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extend_member, 2), - [536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_prepend_member, 2), - [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 6, .production_id = 12), - [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_alias_decl, 4, .production_id = 5), - [542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 3, .production_id = 2), - [544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 4, .production_id = 3), - [546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 4, .production_id = 7), - [548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 3), - [550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 5), - [552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 5, .production_id = 8), - [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 4), - [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 4, .production_id = 6), - [558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 4, .production_id = 2), - [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 3), + [478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 5), + [480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 4), + [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_decl, 3), + [484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 6), + [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 5), + [488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ivar_member, 5), + [490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 4), + [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ivar_member, 3), + [494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 8), + [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_member, 7), + [498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type, 4), + [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameters, 4), + [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_type_parameters, 4), + [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type, 3), + [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameters, 3), + [508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_type_parameters, 3), + [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type, 2), + [512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1), + [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 1), + [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 5, .production_id = 2), + [520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 3, .production_id = 2), + [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 4, .production_id = 8), + [524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 4, .production_id = 2), + [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 5, .production_id = 10), + [528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 6, .production_id = 16), + [530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 5, .production_id = 11), + [532] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 3), + [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 6, .production_id = 15), + [536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 5, .production_id = 12), + [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_alias_decl, 4, .production_id = 6), + [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 3), + [542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 5), + [544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_decl, 4, .production_id = 7), + [546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_decl, 4), + [548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_superclass, 2), + [550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_alias_decl, 4, .production_id = 3), + [552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 4, .production_id = 4), + [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_member, 2), + [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extend_member, 2), + [558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_decl, 4), + [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_prepend_member, 2), [562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_types, 2), - [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_types, 1), - [568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 2), - [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_superclass, 3), - [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_name, 1), + [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 2), + [568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_types, 1), + [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_member, 7), + [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 1), [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_types, 4), - [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_type_binds, 2), - [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 4), - [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_class_decl_repeat1, 1), - [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_member, 6), - [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_member, 3), - [590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_member, 3), - [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility_member, 2), - [594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_types, 3), - [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), - [598] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(439), - [601] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(376), - [604] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(338), - [607] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(342), - [610] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(330), - [613] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(331), - [616] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(497), - [619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extend_member, 3), - [621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 3), - [623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_prepend_member, 3), + [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility_member, 2), + [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_member, 3), + [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_type_binds, 2), + [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_name, 1), + [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_superclass, 3), + [590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singleton_method_name, 3), + [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_member, 3, .production_id = 9), + [594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_member, 5), + [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extend_member, 3), + [598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 3), + [600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_prepend_member, 3), + [602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), + [604] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(459), + [607] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(340), + [610] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(343), + [613] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(358), + [616] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(328), + [619] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(327), + [622] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat2, 2), SHIFT_REPEAT(497), [625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 2), - [627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_member, 7), - [629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_member, 5), - [631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_member, 7), + [627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_member, 6), + [629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_types, 3), + [631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_self_types, 4), [633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_member, 4), - [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), - [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), - [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), + [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), - [645] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(418), - [648] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(518), - [651] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(323), - [654] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(413), - [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [645] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(417), + [648] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(492), + [651] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(309), + [654] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 2), SHIFT_REPEAT(357), + [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), + [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), - [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), - [671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_directive_repeat1, 2), - [675] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_directive_repeat1, 2), SHIFT_REPEAT(334), - [678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_decl, 3), - [680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_clause, 1, .production_id = 1), - [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), - [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_directive, 3), - [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_directive, 2), + [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), + [671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_directive, 3), + [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), + [677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_directive, 2), + [679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_clause, 1, .production_id = 1), + [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), + [683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_directive_repeat1, 2), + [685] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_directive_repeat1, 2), SHIFT_REPEAT(326), + [688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_decl, 3), [690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), [692] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(329), [695] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_method_name, 1), - [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_clause, 2), - [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_clause, 3, .production_id = 4), - [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), - [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), - [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), - [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), - [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), - [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), - [729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 1), - [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trailing_positionals, 1), - [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [755] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_required_positionals_repeat1, 2), SHIFT_REPEAT(29), - [758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_member, 1), - [760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [762] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), - [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [768] = {.entry = {.count = 1, .reusable = false}}, SHIFT(500), - [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), - [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_type_single, 3, .production_id = 14), - [780] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility, 1), - [782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility, 1), - [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), - [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_clause, 3, .production_id = 5), + [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_clause, 2), + [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), + [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), + [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), + [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), + [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), + [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trailing_positionals, 1), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [743] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [745] = {.entry = {.count = 1, .reusable = false}}, SHIFT(408), + [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(482), + [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interface_decl_repeat1, 1), + [757] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_required_positionals_repeat1, 2), SHIFT_REPEAT(26), + [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_member, 1), + [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), + [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_type_single, 3, .production_id = 17), + [784] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility, 1), + [786] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility, 1), [788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2), - [790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5), - [792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 2), - [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), + [790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 2), + [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), [796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace, 1), [798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type_parameters, 3), - [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(275), - [804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(363), - [806] = {.entry = {.count = 1, .reusable = false}}, SHIFT(362), - [808] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289), - [810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), - [812] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345), - [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace, 3), - [818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(106), - [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), - [822] = {.entry = {.count = 1, .reusable = false}}, SHIFT(119), - [824] = {.entry = {.count = 1, .reusable = false}}, SHIFT(351), - [826] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), - [828] = {.entry = {.count = 1, .reusable = false}}, SHIFT(368), - [830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 4), - [832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(352), - [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), - [836] = {.entry = {.count = 1, .reusable = false}}, SHIFT(369), - [838] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), - [840] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(362), - [843] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat2, 2), - [845] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat2, 2), SHIFT_REPEAT(363), - [848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type_parameters, 4), - [850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), - [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [854] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace, 2), - [856] = {.entry = {.count = 1, .reusable = false}}, SHIFT(163), - [858] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 3), - [860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3), - [864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), - [866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 6), - [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524), - [870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 7), - [872] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 1), - [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), - [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), - [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [888] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_variable, 1), - [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), - [898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), - [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), - [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), - [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [910] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_method_type_parameters_repeat1, 2), SHIFT_REPEAT(456), - [913] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_method_type_parameters_repeat1, 2), - [915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [921] = {.entry = {.count = 1, .reusable = false}}, SHIFT(252), - [923] = {.entry = {.count = 1, .reusable = false}}, SHIFT(512), - [925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), - [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), - [935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [937] = {.entry = {.count = 1, .reusable = false}}, SHIFT(496), - [939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), - [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), - [951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), - [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [959] = {.entry = {.count = 1, .reusable = false}}, SHIFT(492), - [961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), - [965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [967] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_type_parameters_repeat1, 2), SHIFT_REPEAT(304), - [970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_type_parameters_repeat1, 2), - [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(520), - [978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(535), - [980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [982] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 16), SHIFT_REPEAT(452), - [985] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 16), - [987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [991] = {.entry = {.count = 1, .reusable = false}}, SHIFT(438), - [993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [995] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2), SHIFT_REPEAT(46), - [998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_self_type_binding, 5), - [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), - [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [1006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [1010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_keywords, 4, .production_id = 18), - [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), - [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), - [1016] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_name, 2), - [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), - [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [1022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [1024] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 11), - [1026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), - [1028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_name, 1), - [1030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generics_bound, 2), - [1032] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bound_type, 1), - [1034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_keywords, 3, .production_id = 17), - [1036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [1038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 4), - [1040] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keywords, 1), - [1042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [1044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [1046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [1048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), - [1050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), - [1052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [1054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [1056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [1058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [1060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 5), - [1062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [1064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), - [1066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [1068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [1070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [1072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [1074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), - [1076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), - [1078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), - [1080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [1082] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [1084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), - [1086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [1088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), - [1090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), - [1092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [1094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), - [1096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [1098] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribyte_type, 1), - [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), - [1102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), - [1104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [1106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_splat_keyword, 2), - [1108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [1112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), - [1114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [1116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), - [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), - [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), - [1124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), - [1126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), - [1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), - [1132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 7), - [1134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [1136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_keywords, 6, .production_id = 18), - [1138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 6), - [1140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), - [1142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), - [1144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_keywords, 5, .production_id = 17), - [1146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generics_variance, 1), - [1148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), - [1150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), - [1152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3), + [802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(252), + [804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(519), + [806] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), + [808] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(349), + [811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), + [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace, 2), + [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5), + [823] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat2, 2), + [825] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat2, 2), SHIFT_REPEAT(356), + [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), + [830] = {.entry = {.count = 1, .reusable = false}}, SHIFT(273), + [832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(356), + [834] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_type_parameters, 4), + [836] = {.entry = {.count = 1, .reusable = false}}, SHIFT(349), + [838] = {.entry = {.count = 1, .reusable = false}}, SHIFT(119), + [840] = {.entry = {.count = 1, .reusable = false}}, SHIFT(374), + [842] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375), + [844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 1), + [846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 3), + [848] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282), + [850] = {.entry = {.count = 1, .reusable = false}}, SHIFT(361), + [852] = {.entry = {.count = 1, .reusable = false}}, SHIFT(364), + [854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [856] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160), + [858] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 6), + [860] = {.entry = {.count = 1, .reusable = false}}, SHIFT(116), + [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), + [864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 7), + [868] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), + [870] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), + [872] = {.entry = {.count = 1, .reusable = false}}, SHIFT(372), + [874] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace, 3), + [876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 4), + [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), + [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_variable, 1), + [898] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_type_parameters_repeat1, 2), SHIFT_REPEAT(306), + [901] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_type_parameters_repeat1, 2), + [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), + [915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), + [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), + [925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [929] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_method_type_parameters_repeat1, 2), SHIFT_REPEAT(429), + [932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_method_type_parameters_repeat1, 2), + [934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_self_type_binding, 5), + [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [944] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2), SHIFT_REPEAT(73), + [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [949] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 19), SHIFT_REPEAT(452), + [952] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 19), + [954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(526), + [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), + [960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [966] = {.entry = {.count = 1, .reusable = false}}, SHIFT(512), + [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), + [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [982] = {.entry = {.count = 1, .reusable = false}}, SHIFT(440), + [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), + [986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), + [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [996] = {.entry = {.count = 1, .reusable = false}}, SHIFT(474), + [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), + [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), + [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), + [1006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [1008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_type_parameter, 4), + [1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [1016] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_keywords, 4, .production_id = 21), + [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), + [1022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [1024] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bound_type, 1), + [1026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generics_bound, 2), + [1028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [1030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), + [1032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_name, 2), + [1034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 13), + [1036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_keywords, 3, .production_id = 20), + [1038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), + [1040] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_name, 1), + [1042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [1044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [1046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [1048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [1050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keywords, 1), + [1052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [1054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [1056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), + [1058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [1060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), + [1062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [1064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), + [1066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), + [1068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [1070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [1072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [1074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribyte_type, 1), + [1076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [1078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [1080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [1082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [1084] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [1086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [1088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), + [1090] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 7), + [1092] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_splat_keyword, 2), + [1094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_keywords, 6, .production_id = 21), + [1096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [1098] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 6), + [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [1102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [1104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), + [1106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [1108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_required_keywords, 5, .production_id = 20), + [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), + [1112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generics_variance, 1), + [1114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), + [1116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), + [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), + [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), + [1124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 5), + [1126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), + [1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), + [1132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [1134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [1136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [1138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), + [1140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [1142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [1144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), + [1146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), }; #ifdef __cplusplus