From c665f655c0a45aab8247a0edb38b613e84c713ef Mon Sep 17 00:00:00 2001 From: Aymeric Wibo Date: Sat, 21 Dec 2024 11:03:11 +0100 Subject: [PATCH 1/4] scripts/update-ts-flamingo: Don't necessarily clone main branch --- scripts/update-ts-flamingo.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/update-ts-flamingo.sh b/scripts/update-ts-flamingo.sh index 1f199e8..fb6e474 100644 --- a/scripts/update-ts-flamingo.sh +++ b/scripts/update-ts-flamingo.sh @@ -15,7 +15,7 @@ fi # Update tree-sitter-flamingo (i.e. src/parser.c and src/tree_sitter/parser.h). rm -rf tree-sitter-flamingo 2>/dev/null || true -git clone $URL --depth 1 --branch main +git clone $URL --depth 1 mv tree-sitter-flamingo/src/parser.c flamingo/parser.c mv tree-sitter-flamingo/src/tree_sitter/parser.h flamingo/tree_sitter/parser.h From 51a04ca91cba05762b13f40e2b23eafe1a6bc13d Mon Sep 17 00:00:00 2001 From: Aymeric Wibo Date: Sat, 21 Dec 2024 11:03:26 +0100 Subject: [PATCH 2/4] tree-sitter: Update parser --- flamingo/parser.c | 9352 +++++++++++++++++++++++---------------------- 1 file changed, 4756 insertions(+), 4596 deletions(-) diff --git a/flamingo/parser.c b/flamingo/parser.c index 3e6e223..f3ea285 100644 --- a/flamingo/parser.c +++ b/flamingo/parser.c @@ -6,7 +6,7 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 336 +#define STATE_COUNT 338 #define LARGE_STATE_COUNT 13 #define SYMBOL_COUNT 110 #define ALIAS_COUNT 0 @@ -14,7 +14,7 @@ #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 30 #define MAX_ALIAS_SEQUENCE_LENGTH 9 -#define PRODUCTION_ID_COUNT 54 +#define PRODUCTION_ID_COUNT 55 enum ts_symbol_identifiers { anon_sym_SEMI = 1, @@ -37,12 +37,12 @@ enum ts_symbol_identifiers { anon_sym_class = 18, anon_sym_print = 19, anon_sym_assert = 20, - anon_sym_return = 21, - anon_sym_vec = 22, - anon_sym_map = 23, - anon_sym_LT = 24, - anon_sym_GT = 25, - anon_sym_COMMA = 26, + anon_sym_COMMA = 21, + anon_sym_return = 22, + anon_sym_vec = 23, + anon_sym_map = 24, + anon_sym_LT = 25, + anon_sym_GT = 26, anon_sym_COLON = 27, anon_sym_let = 28, anon_sym_EQ = 29, @@ -150,12 +150,12 @@ static const char * const ts_symbol_names[] = { [anon_sym_class] = "class", [anon_sym_print] = "print", [anon_sym_assert] = "assert", + [anon_sym_COMMA] = ",", [anon_sym_return] = "return", [anon_sym_vec] = "vec", [anon_sym_map] = "map", [anon_sym_LT] = "<", [anon_sym_GT] = ">", - [anon_sym_COMMA] = ",", [anon_sym_COLON] = ":", [anon_sym_let] = "let", [anon_sym_EQ] = "=", @@ -263,12 +263,12 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_class] = anon_sym_class, [anon_sym_print] = anon_sym_print, [anon_sym_assert] = anon_sym_assert, + [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_return] = anon_sym_return, [anon_sym_vec] = anon_sym_vec, [anon_sym_map] = anon_sym_map, [anon_sym_LT] = anon_sym_LT, [anon_sym_GT] = anon_sym_GT, - [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_let] = anon_sym_let, [anon_sym_EQ] = anon_sym_EQ, @@ -439,6 +439,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_COMMA] = { + .visible = true, + .named = false, + }, [anon_sym_return] = { .visible = true, .named = false, @@ -459,10 +463,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_COMMA] = { - .visible = true, - .named = false, - }, [anon_sym_COLON] = { .visible = true, .named = false, @@ -890,34 +890,35 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [23] = {.index = 34, .length = 2}, [24] = {.index = 36, .length = 2}, [25] = {.index = 38, .length = 2}, - [26] = {.index = 40, .length = 3}, - [27] = {.index = 43, .length = 2}, - [28] = {.index = 45, .length = 1}, - [29] = {.index = 46, .length = 2}, + [26] = {.index = 40, .length = 2}, + [27] = {.index = 42, .length = 3}, + [28] = {.index = 45, .length = 2}, + [29] = {.index = 47, .length = 1}, [30] = {.index = 48, .length = 2}, [31] = {.index = 50, .length = 2}, - [32] = {.index = 52, .length = 3}, - [33] = {.index = 55, .length = 3}, - [34] = {.index = 58, .length = 3}, - [35] = {.index = 61, .length = 3}, - [36] = {.index = 64, .length = 2}, + [32] = {.index = 52, .length = 2}, + [33] = {.index = 54, .length = 3}, + [34] = {.index = 57, .length = 3}, + [35] = {.index = 60, .length = 3}, + [36] = {.index = 63, .length = 3}, [37] = {.index = 66, .length = 2}, [38] = {.index = 68, .length = 2}, - [39] = {.index = 70, .length = 3}, - [40] = {.index = 73, .length = 3}, - [41] = {.index = 76, .length = 3}, - [42] = {.index = 79, .length = 3}, - [43] = {.index = 82, .length = 4}, - [44] = {.index = 86, .length = 3}, - [45] = {.index = 89, .length = 3}, - [46] = {.index = 92, .length = 3}, - [47] = {.index = 95, .length = 3}, - [48] = {.index = 98, .length = 4}, - [49] = {.index = 102, .length = 4}, - [50] = {.index = 106, .length = 4}, - [51] = {.index = 110, .length = 4}, - [52] = {.index = 114, .length = 4}, - [53] = {.index = 118, .length = 5}, + [39] = {.index = 70, .length = 2}, + [40] = {.index = 72, .length = 3}, + [41] = {.index = 75, .length = 3}, + [42] = {.index = 78, .length = 3}, + [43] = {.index = 81, .length = 3}, + [44] = {.index = 84, .length = 4}, + [45] = {.index = 88, .length = 3}, + [46] = {.index = 91, .length = 3}, + [47] = {.index = 94, .length = 3}, + [48] = {.index = 97, .length = 3}, + [49] = {.index = 100, .length = 4}, + [50] = {.index = 104, .length = 4}, + [51] = {.index = 108, .length = 4}, + [52] = {.index = 112, .length = 4}, + [53] = {.index = 116, .length = 4}, + [54] = {.index = 120, .length = 5}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -981,117 +982,120 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_ident, 0}, {field_type, 2}, [36] = + {field_msg, 3}, + {field_test, 1}, + [38] = {field_name, 1}, {field_type, 3}, - [38] = + [40] = {field_initial, 3}, {field_name, 1}, - [40] = + [42] = {field_body, 3}, {field_name, 2}, {field_qualifiers, 0}, - [43] = + [45] = {field_args, 2}, {field_callable, 0}, - [45] = + [47] = {field_indexed, 0}, - [46] = + [48] = {field_index, 2}, {field_indexed, 0}, - [48] = + [50] = {field_name, 1}, {field_params, 3}, - [50] = + [52] = {field_body, 4}, {field_name, 1}, - [52] = + [54] = {field_body, 4}, {field_name, 1}, {field_ret_type, 3}, - [55] = + [57] = {field_name, 2}, {field_qualifiers, 0}, {field_ret_type, 4}, - [58] = + [60] = {field_name, 2}, {field_qualifiers, 0}, {field_type, 4}, - [61] = + [63] = {field_initial, 4}, {field_name, 2}, {field_qualifiers, 0}, - [64] = + [66] = {field_indexed, 0}, {field_slice_end, 3}, - [66] = + [68] = {field_indexed, 0}, {field_slice_begin, 2}, - [68] = + [70] = {field_name, 1}, {field_ret_type, 5}, - [70] = + [72] = {field_body, 5}, {field_name, 1}, {field_params, 3}, - [73] = + [75] = {field_initial, 5}, {field_name, 1}, {field_type, 3}, - [76] = + [78] = {field_name, 2}, {field_params, 4}, {field_qualifiers, 0}, - [79] = + [81] = {field_body, 5}, {field_name, 2}, {field_qualifiers, 0}, - [82] = + [84] = {field_body, 5}, {field_name, 2}, {field_qualifiers, 0}, {field_ret_type, 4}, - [86] = + [88] = {field_indexed, 0}, {field_slice_begin, 2}, {field_slice_end, 4}, - [89] = + [91] = {field_name, 1}, {field_params, 3}, {field_ret_type, 6}, - [92] = + [94] = {field_body, 6}, {field_name, 1}, {field_ret_type, 5}, - [95] = + [97] = {field_name, 2}, {field_qualifiers, 0}, {field_ret_type, 6}, - [98] = + [100] = {field_body, 6}, {field_name, 2}, {field_params, 4}, {field_qualifiers, 0}, - [102] = + [104] = {field_initial, 6}, {field_name, 2}, {field_qualifiers, 0}, {field_type, 4}, - [106] = + [108] = {field_body, 7}, {field_name, 1}, {field_params, 3}, {field_ret_type, 6}, - [110] = + [112] = {field_name, 2}, {field_params, 4}, {field_qualifiers, 0}, {field_ret_type, 7}, - [114] = + [116] = {field_body, 7}, {field_name, 2}, {field_qualifiers, 0}, {field_ret_type, 6}, - [118] = + [120] = {field_body, 8}, {field_name, 2}, {field_params, 4}, @@ -1115,68 +1119,68 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [4] = 2, [5] = 2, [6] = 6, - [7] = 6, + [7] = 7, [8] = 8, - [9] = 6, + [9] = 8, [10] = 10, - [11] = 11, - [12] = 8, + [11] = 8, + [12] = 7, [13] = 13, [14] = 13, [15] = 15, [16] = 16, [17] = 17, [18] = 18, - [19] = 19, - [20] = 19, - [21] = 18, - [22] = 16, - [23] = 17, + [19] = 18, + [20] = 20, + [21] = 20, + [22] = 17, + [23] = 16, [24] = 24, [25] = 25, - [26] = 26, + [26] = 25, [27] = 27, [28] = 28, - [29] = 29, - [30] = 30, + [29] = 28, + [30] = 27, [31] = 31, - [32] = 26, - [33] = 28, + [32] = 24, + [33] = 33, [34] = 34, - [35] = 31, - [36] = 24, - [37] = 25, - [38] = 38, - [39] = 34, - [40] = 27, + [35] = 33, + [36] = 34, + [37] = 37, + [38] = 37, + [39] = 39, + [40] = 40, [41] = 41, - [42] = 41, + [42] = 31, [43] = 43, [44] = 44, [45] = 45, [46] = 46, [47] = 47, [48] = 48, - [49] = 49, + [49] = 43, [50] = 50, [51] = 51, - [52] = 52, - [53] = 47, + [52] = 44, + [53] = 53, [54] = 54, [55] = 55, [56] = 56, [57] = 57, - [58] = 58, - [59] = 56, - [60] = 48, - [61] = 55, - [62] = 58, - [63] = 45, - [64] = 46, - [65] = 65, - [66] = 44, - [67] = 67, - [68] = 68, + [58] = 50, + [59] = 59, + [60] = 60, + [61] = 61, + [62] = 60, + [63] = 54, + [64] = 64, + [65] = 55, + [66] = 66, + [67] = 51, + [68] = 53, [69] = 69, [70] = 70, [71] = 71, @@ -1221,86 +1225,86 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [110] = 110, [111] = 111, [112] = 112, - [113] = 77, - [114] = 114, + [113] = 113, + [114] = 80, [115] = 115, [116] = 116, [117] = 117, [118] = 118, [119] = 119, [120] = 120, - [121] = 74, - [122] = 69, - [123] = 70, + [121] = 121, + [122] = 122, + [123] = 123, [124] = 124, [125] = 125, - [126] = 71, - [127] = 127, + [126] = 126, + [127] = 13, [128] = 128, [129] = 129, - [130] = 72, + [130] = 130, [131] = 131, - [132] = 75, - [133] = 73, + [132] = 132, + [133] = 133, [134] = 134, - [135] = 83, - [136] = 68, - [137] = 13, - [138] = 138, - [139] = 139, - [140] = 140, - [141] = 141, - [142] = 142, - [143] = 143, - [144] = 108, + [135] = 135, + [136] = 76, + [137] = 72, + [138] = 74, + [139] = 70, + [140] = 77, + [141] = 69, + [142] = 75, + [143] = 73, + [144] = 71, [145] = 145, - [146] = 107, - [147] = 147, - [148] = 143, - [149] = 149, + [146] = 146, + [147] = 145, + [148] = 105, + [149] = 106, [150] = 150, - [151] = 150, - [152] = 112, - [153] = 153, - [154] = 153, - [155] = 118, - [156] = 116, - [157] = 115, - [158] = 125, - [159] = 138, - [160] = 120, - [161] = 119, - [162] = 109, - [163] = 124, - [164] = 129, - [165] = 128, - [166] = 139, - [167] = 131, - [168] = 168, - [169] = 111, - [170] = 134, - [171] = 114, + [151] = 151, + [152] = 152, + [153] = 152, + [154] = 154, + [155] = 13, + [156] = 126, + [157] = 122, + [158] = 131, + [159] = 117, + [160] = 111, + [161] = 116, + [162] = 123, + [163] = 163, + [164] = 134, + [165] = 121, + [166] = 129, + [167] = 135, + [168] = 119, + [169] = 169, + [170] = 169, + [171] = 163, [172] = 172, - [173] = 172, - [174] = 174, - [175] = 174, - [176] = 117, - [177] = 142, - [178] = 127, - [179] = 140, - [180] = 13, - [181] = 83, - [182] = 141, - [183] = 183, - [184] = 184, + [173] = 132, + [174] = 118, + [175] = 80, + [176] = 120, + [177] = 172, + [178] = 133, + [179] = 112, + [180] = 128, + [181] = 125, + [182] = 124, + [183] = 115, + [184] = 113, [185] = 185, [186] = 186, [187] = 187, [188] = 188, - [189] = 188, - [190] = 188, - [191] = 191, - [192] = 192, + [189] = 189, + [190] = 190, + [191] = 190, + [192] = 190, [193] = 193, [194] = 194, [195] = 195, @@ -1312,22 +1316,22 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [201] = 201, [202] = 202, [203] = 203, - [204] = 199, + [204] = 204, [205] = 205, - [206] = 206, - [207] = 196, - [208] = 208, - [209] = 200, + [206] = 196, + [207] = 207, + [208] = 200, + [209] = 209, [210] = 210, - [211] = 211, - [212] = 195, + [211] = 209, + [212] = 199, [213] = 213, [214] = 214, [215] = 215, [216] = 216, [217] = 217, [218] = 218, - [219] = 215, + [219] = 219, [220] = 220, [221] = 221, [222] = 222, @@ -1335,30 +1339,30 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [224] = 224, [225] = 225, [226] = 226, - [227] = 227, + [227] = 216, [228] = 228, [229] = 229, [230] = 230, [231] = 231, - [232] = 231, - [233] = 233, - [234] = 234, + [232] = 232, + [233] = 232, + [234] = 231, [235] = 235, - [236] = 228, + [236] = 236, [237] = 237, [238] = 238, [239] = 239, [240] = 240, [241] = 241, [242] = 242, - [243] = 238, + [243] = 243, [244] = 244, [245] = 245, [246] = 246, [247] = 247, [248] = 248, [249] = 249, - [250] = 250, + [250] = 240, [251] = 251, [252] = 252, [253] = 253, @@ -1367,7 +1371,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [256] = 256, [257] = 257, [258] = 258, - [259] = 255, + [259] = 259, [260] = 260, [261] = 261, [262] = 262, @@ -1375,48 +1379,48 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [264] = 264, [265] = 265, [266] = 266, - [267] = 267, + [267] = 265, [268] = 268, [269] = 269, - [270] = 235, - [271] = 227, + [270] = 270, + [271] = 238, [272] = 272, - [273] = 244, - [274] = 246, - [275] = 275, - [276] = 242, - [277] = 237, - [278] = 278, - [279] = 107, - [280] = 108, + [273] = 229, + [274] = 243, + [275] = 251, + [276] = 276, + [277] = 277, + [278] = 252, + [279] = 249, + [280] = 105, [281] = 281, [282] = 282, [283] = 283, - [284] = 284, - [285] = 234, + [284] = 106, + [285] = 285, [286] = 286, [287] = 287, [288] = 288, - [289] = 289, + [289] = 286, [290] = 290, - [291] = 287, + [291] = 288, [292] = 292, - [293] = 292, + [293] = 293, [294] = 294, [295] = 295, [296] = 296, - [297] = 286, + [297] = 297, [298] = 298, - [299] = 294, - [300] = 284, + [299] = 296, + [300] = 300, [301] = 301, - [302] = 302, + [302] = 290, [303] = 303, - [304] = 304, - [305] = 288, - [306] = 298, - [307] = 307, - [308] = 308, + [304] = 293, + [305] = 305, + [306] = 230, + [307] = 287, + [308] = 294, [309] = 309, [310] = 310, [311] = 311, @@ -1430,20 +1434,22 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [319] = 319, [320] = 320, [321] = 321, - [322] = 320, - [323] = 321, + [322] = 322, + [323] = 320, [324] = 324, [325] = 325, [326] = 326, [327] = 327, - [328] = 319, - [329] = 324, + [328] = 327, + [329] = 322, [330] = 330, [331] = 331, [332] = 332, - [333] = 333, - [334] = 333, - [335] = 335, + [333] = 319, + [334] = 334, + [335] = 330, + [336] = 336, + [337] = 337, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1461,15 +1467,15 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == ')') ADVANCE(63); if (lookahead == '*') ADVANCE(91); if (lookahead == '+') ADVANCE(95); - if (lookahead == ',') ADVANCE(80); + if (lookahead == ',') ADVANCE(73); if (lookahead == '-') ADVANCE(87); if (lookahead == '.') ADVANCE(55); if (lookahead == '/') ADVANCE(92); if (lookahead == ':') ADVANCE(81); if (lookahead == ';') ADVANCE(44); - if (lookahead == '<') ADVANCE(77); + if (lookahead == '<') ADVANCE(78); if (lookahead == '=') ADVANCE(84); - if (lookahead == '>') ADVANCE(79); + if (lookahead == '>') ADVANCE(80); if (lookahead == '[') ADVANCE(104); if (lookahead == ']') ADVANCE(105); if (lookahead == '^') ADVANCE(19); @@ -1536,14 +1542,15 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '(') ADVANCE(62); if (lookahead == '*') ADVANCE(91); if (lookahead == '+') ADVANCE(94); + if (lookahead == ',') ADVANCE(73); if (lookahead == '-') ADVANCE(87); if (lookahead == '.') ADVANCE(55); if (lookahead == '/') ADVANCE(92); if (lookahead == ':') ADVANCE(81); if (lookahead == ';') ADVANCE(44); - if (lookahead == '<') ADVANCE(77); + if (lookahead == '<') ADVANCE(78); if (lookahead == '=') ADVANCE(85); - if (lookahead == '>') ADVANCE(79); + if (lookahead == '>') ADVANCE(80); if (lookahead == '[') ADVANCE(104); if (lookahead == '^') ADVANCE(19); if (lookahead == 'c') ADVANCE(26); @@ -1565,14 +1572,15 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '(') ADVANCE(62); if (lookahead == '*') ADVANCE(91); if (lookahead == '+') ADVANCE(94); + if (lookahead == ',') ADVANCE(73); if (lookahead == '-') ADVANCE(86); if (lookahead == '.') ADVANCE(55); if (lookahead == '/') ADVANCE(92); if (lookahead == ':') ADVANCE(81); if (lookahead == ';') ADVANCE(44); - if (lookahead == '<') ADVANCE(77); + if (lookahead == '<') ADVANCE(78); if (lookahead == '=') ADVANCE(85); - if (lookahead == '>') ADVANCE(79); + if (lookahead == '>') ADVANCE(80); if (lookahead == '[') ADVANCE(104); if (lookahead == '^') ADVANCE(19); if (lookahead == 'c') ADVANCE(26); @@ -1638,14 +1646,14 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == ')') ADVANCE(63); if (lookahead == '*') ADVANCE(91); if (lookahead == '+') ADVANCE(94); - if (lookahead == ',') ADVANCE(80); + if (lookahead == ',') ADVANCE(73); if (lookahead == '-') ADVANCE(87); if (lookahead == '.') ADVANCE(55); if (lookahead == '/') ADVANCE(92); if (lookahead == ':') ADVANCE(81); - if (lookahead == '<') ADVANCE(77); + if (lookahead == '<') ADVANCE(78); if (lookahead == '=') ADVANCE(16); - if (lookahead == '>') ADVANCE(79); + if (lookahead == '>') ADVANCE(80); if (lookahead == '[') ADVANCE(104); if (lookahead == ']') ADVANCE(105); if (lookahead == '^') ADVANCE(19); @@ -1672,14 +1680,14 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == ')') ADVANCE(63); if (lookahead == '*') ADVANCE(91); if (lookahead == '+') ADVANCE(94); - if (lookahead == ',') ADVANCE(80); + if (lookahead == ',') ADVANCE(73); if (lookahead == '-') ADVANCE(86); if (lookahead == '.') ADVANCE(55); if (lookahead == '/') ADVANCE(92); if (lookahead == ':') ADVANCE(81); - if (lookahead == '<') ADVANCE(77); + if (lookahead == '<') ADVANCE(78); if (lookahead == '=') ADVANCE(16); - if (lookahead == '>') ADVANCE(79); + if (lookahead == '>') ADVANCE(80); if (lookahead == '[') ADVANCE(104); if (lookahead == ']') ADVANCE(105); if (lookahead == '^') ADVANCE(19); @@ -1839,9 +1847,9 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '/') ADVANCE(92); if (lookahead == ':') ADVANCE(81); if (lookahead == ';') ADVANCE(44); - if (lookahead == '<') ADVANCE(77); + if (lookahead == '<') ADVANCE(78); if (lookahead == '=') ADVANCE(16); - if (lookahead == '>') ADVANCE(79); + if (lookahead == '>') ADVANCE(80); if (lookahead == '[') ADVANCE(104); if (lookahead == '^') ADVANCE(19); if (lookahead == 'a') ADVANCE(136); @@ -1874,11 +1882,11 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '#') ADVANCE(11); if (lookahead == '(') ADVANCE(62); if (lookahead == ')') ADVANCE(63); - if (lookahead == ',') ADVANCE(80); + if (lookahead == ',') ADVANCE(73); if (lookahead == '-') ADVANCE(86); if (lookahead == ':') ADVANCE(81); - if (lookahead == '<') ADVANCE(76); - if (lookahead == '>') ADVANCE(78); + if (lookahead == '<') ADVANCE(77); + if (lookahead == '>') ADVANCE(79); if (lookahead == '[') ADVANCE(104); if (lookahead == 'a') ADVANCE(136); if (lookahead == 'b') ADVANCE(145); @@ -2043,42 +2051,42 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('a' <= lookahead && lookahead <= 'z')) ADVANCE(179); END_STATE(); case 73: + ACCEPT_TOKEN(anon_sym_COMMA); + END_STATE(); + case 74: ACCEPT_TOKEN(anon_sym_return); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(179); END_STATE(); - case 74: + case 75: ACCEPT_TOKEN(anon_sym_vec); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(179); END_STATE(); - case 75: + case 76: ACCEPT_TOKEN(anon_sym_map); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(179); END_STATE(); - case 76: - ACCEPT_TOKEN(anon_sym_LT); - END_STATE(); case 77: ACCEPT_TOKEN(anon_sym_LT); - if (lookahead == '=') ADVANCE(99); END_STATE(); case 78: - ACCEPT_TOKEN(anon_sym_GT); + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '=') ADVANCE(99); END_STATE(); case 79: ACCEPT_TOKEN(anon_sym_GT); - if (lookahead == '=') ADVANCE(100); END_STATE(); case 80: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(100); END_STATE(); case 81: ACCEPT_TOKEN(anon_sym_COLON); @@ -2251,7 +2259,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 118: ACCEPT_TOKEN(aux_sym_identifier_token1); - if (lookahead == 'c') ADVANCE(74); + if (lookahead == 'c') ADVANCE(75); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || @@ -2415,7 +2423,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 138: ACCEPT_TOKEN(aux_sym_identifier_token1); - if (lookahead == 'n') ADVANCE(73); + if (lookahead == 'n') ADVANCE(74); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || @@ -2503,7 +2511,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 149: ACCEPT_TOKEN(aux_sym_identifier_token1); - if (lookahead == 'p') ADVANCE(75); + if (lookahead == 'p') ADVANCE(76); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || @@ -2858,7 +2866,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [65] = {.lex_state = 5}, [66] = {.lex_state = 5}, [67] = {.lex_state = 5}, - [68] = {.lex_state = 3}, + [68] = {.lex_state = 5}, [69] = {.lex_state = 3}, [70] = {.lex_state = 3}, [71] = {.lex_state = 3}, @@ -2868,42 +2876,42 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [75] = {.lex_state = 3}, [76] = {.lex_state = 3}, [77] = {.lex_state = 3}, - [78] = {.lex_state = 42}, - [79] = {.lex_state = 42}, - [80] = {.lex_state = 3}, - [81] = {.lex_state = 3}, - [82] = {.lex_state = 42}, - [83] = {.lex_state = 42}, + [78] = {.lex_state = 3}, + [79] = {.lex_state = 3}, + [80] = {.lex_state = 42}, + [81] = {.lex_state = 42}, + [82] = {.lex_state = 3}, + [83] = {.lex_state = 3}, [84] = {.lex_state = 42}, [85] = {.lex_state = 42}, [86] = {.lex_state = 3}, - [87] = {.lex_state = 3}, + [87] = {.lex_state = 42}, [88] = {.lex_state = 42}, [89] = {.lex_state = 42}, [90] = {.lex_state = 42}, [91] = {.lex_state = 42}, [92] = {.lex_state = 42}, - [93] = {.lex_state = 3}, + [93] = {.lex_state = 42}, [94] = {.lex_state = 3}, [95] = {.lex_state = 42}, - [96] = {.lex_state = 3}, - [97] = {.lex_state = 42}, - [98] = {.lex_state = 3}, - [99] = {.lex_state = 42}, - [100] = {.lex_state = 3}, + [96] = {.lex_state = 42}, + [97] = {.lex_state = 3}, + [98] = {.lex_state = 42}, + [99] = {.lex_state = 3}, + [100] = {.lex_state = 42}, [101] = {.lex_state = 42}, - [102] = {.lex_state = 42}, + [102] = {.lex_state = 3}, [103] = {.lex_state = 42}, - [104] = {.lex_state = 42}, - [105] = {.lex_state = 42}, - [106] = {.lex_state = 42}, - [107] = {.lex_state = 2}, - [108] = {.lex_state = 2}, - [109] = {.lex_state = 3}, + [104] = {.lex_state = 3}, + [105] = {.lex_state = 2}, + [106] = {.lex_state = 2}, + [107] = {.lex_state = 42}, + [108] = {.lex_state = 42}, + [109] = {.lex_state = 42}, [110] = {.lex_state = 3}, [111] = {.lex_state = 3}, [112] = {.lex_state = 3}, - [113] = {.lex_state = 7}, + [113] = {.lex_state = 3}, [114] = {.lex_state = 3}, [115] = {.lex_state = 3}, [116] = {.lex_state = 3}, @@ -2911,35 +2919,35 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [118] = {.lex_state = 3}, [119] = {.lex_state = 3}, [120] = {.lex_state = 3}, - [121] = {.lex_state = 7}, - [122] = {.lex_state = 7}, - [123] = {.lex_state = 7}, + [121] = {.lex_state = 3}, + [122] = {.lex_state = 3}, + [123] = {.lex_state = 3}, [124] = {.lex_state = 3}, [125] = {.lex_state = 3}, - [126] = {.lex_state = 7}, + [126] = {.lex_state = 3}, [127] = {.lex_state = 3}, [128] = {.lex_state = 3}, [129] = {.lex_state = 3}, - [130] = {.lex_state = 7}, + [130] = {.lex_state = 3}, [131] = {.lex_state = 3}, - [132] = {.lex_state = 7}, - [133] = {.lex_state = 7}, + [132] = {.lex_state = 3}, + [133] = {.lex_state = 3}, [134] = {.lex_state = 3}, [135] = {.lex_state = 3}, [136] = {.lex_state = 7}, - [137] = {.lex_state = 3}, - [138] = {.lex_state = 3}, - [139] = {.lex_state = 3}, - [140] = {.lex_state = 3}, - [141] = {.lex_state = 3}, - [142] = {.lex_state = 3}, + [137] = {.lex_state = 7}, + [138] = {.lex_state = 7}, + [139] = {.lex_state = 7}, + [140] = {.lex_state = 7}, + [141] = {.lex_state = 7}, + [142] = {.lex_state = 7}, [143] = {.lex_state = 7}, - [144] = {.lex_state = 6}, + [144] = {.lex_state = 7}, [145] = {.lex_state = 7}, - [146] = {.lex_state = 6}, + [146] = {.lex_state = 7}, [147] = {.lex_state = 7}, - [148] = {.lex_state = 7}, - [149] = {.lex_state = 7}, + [148] = {.lex_state = 6}, + [149] = {.lex_state = 6}, [150] = {.lex_state = 7}, [151] = {.lex_state = 7}, [152] = {.lex_state = 7}, @@ -2973,17 +2981,17 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [180] = {.lex_state = 7}, [181] = {.lex_state = 7}, [182] = {.lex_state = 7}, - [183] = {.lex_state = 5}, - [184] = {.lex_state = 5}, + [183] = {.lex_state = 7}, + [184] = {.lex_state = 7}, [185] = {.lex_state = 5}, [186] = {.lex_state = 5}, [187] = {.lex_state = 5}, - [188] = {.lex_state = 3}, - [189] = {.lex_state = 3}, + [188] = {.lex_state = 5}, + [189] = {.lex_state = 5}, [190] = {.lex_state = 3}, [191] = {.lex_state = 3}, - [192] = {.lex_state = 7}, - [193] = {.lex_state = 7}, + [192] = {.lex_state = 3}, + [193] = {.lex_state = 3}, [194] = {.lex_state = 7}, [195] = {.lex_state = 7}, [196] = {.lex_state = 7}, @@ -3004,48 +3012,48 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [211] = {.lex_state = 7}, [212] = {.lex_state = 7}, [213] = {.lex_state = 7}, - [214] = {.lex_state = 6}, - [215] = {.lex_state = 9}, + [214] = {.lex_state = 7}, + [215] = {.lex_state = 7}, [216] = {.lex_state = 9}, [217] = {.lex_state = 6}, [218] = {.lex_state = 9}, - [219] = {.lex_state = 9}, + [219] = {.lex_state = 6}, [220] = {.lex_state = 6}, [221] = {.lex_state = 9}, - [222] = {.lex_state = 9}, - [223] = {.lex_state = 6}, + [222] = {.lex_state = 6}, + [223] = {.lex_state = 9}, [224] = {.lex_state = 6}, - [225] = {.lex_state = 6}, - [226] = {.lex_state = 4}, - [227] = {.lex_state = 3}, - [228] = {.lex_state = 9}, - [229] = {.lex_state = 4}, - [230] = {.lex_state = 3}, - [231] = {.lex_state = 9}, + [225] = {.lex_state = 9}, + [226] = {.lex_state = 6}, + [227] = {.lex_state = 9}, + [228] = {.lex_state = 3}, + [229] = {.lex_state = 3}, + [230] = {.lex_state = 4}, + [231] = {.lex_state = 6}, [232] = {.lex_state = 6}, - [233] = {.lex_state = 3}, - [234] = {.lex_state = 4}, - [235] = {.lex_state = 3}, - [236] = {.lex_state = 6}, + [233] = {.lex_state = 9}, + [234] = {.lex_state = 9}, + [235] = {.lex_state = 4}, + [236] = {.lex_state = 4}, [237] = {.lex_state = 3}, - [238] = {.lex_state = 6}, + [238] = {.lex_state = 3}, [239] = {.lex_state = 4}, - [240] = {.lex_state = 3}, + [240] = {.lex_state = 6}, [241] = {.lex_state = 4}, - [242] = {.lex_state = 3}, - [243] = {.lex_state = 6}, - [244] = {.lex_state = 3}, - [245] = {.lex_state = 6}, + [242] = {.lex_state = 6}, + [243] = {.lex_state = 3}, + [244] = {.lex_state = 4}, + [245] = {.lex_state = 3}, [246] = {.lex_state = 3}, - [247] = {.lex_state = 4}, - [248] = {.lex_state = 3}, + [247] = {.lex_state = 3}, + [248] = {.lex_state = 6}, [249] = {.lex_state = 3}, [250] = {.lex_state = 6}, - [251] = {.lex_state = 4}, + [251] = {.lex_state = 3}, [252] = {.lex_state = 3}, - [253] = {.lex_state = 3}, + [253] = {.lex_state = 4}, [254] = {.lex_state = 3}, - [255] = {.lex_state = 6}, + [255] = {.lex_state = 3}, [256] = {.lex_state = 3}, [257] = {.lex_state = 6}, [258] = {.lex_state = 3}, @@ -3054,52 +3062,52 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [261] = {.lex_state = 3}, [262] = {.lex_state = 3}, [263] = {.lex_state = 3}, - [264] = {.lex_state = 6}, - [265] = {.lex_state = 3}, + [264] = {.lex_state = 3}, + [265] = {.lex_state = 6}, [266] = {.lex_state = 6}, - [267] = {.lex_state = 10}, - [268] = {.lex_state = 10}, - [269] = {.lex_state = 6}, - [270] = {.lex_state = 42}, + [267] = {.lex_state = 6}, + [268] = {.lex_state = 3}, + [269] = {.lex_state = 10}, + [270] = {.lex_state = 10}, [271] = {.lex_state = 42}, - [272] = {.lex_state = 10}, + [272] = {.lex_state = 6}, [273] = {.lex_state = 42}, [274] = {.lex_state = 42}, - [275] = {.lex_state = 10}, - [276] = {.lex_state = 42}, - [277] = {.lex_state = 42}, - [278] = {.lex_state = 9}, + [275] = {.lex_state = 42}, + [276] = {.lex_state = 10}, + [277] = {.lex_state = 10}, + [278] = {.lex_state = 42}, [279] = {.lex_state = 42}, [280] = {.lex_state = 42}, [281] = {.lex_state = 9}, [282] = {.lex_state = 0}, - [283] = {.lex_state = 42}, - [284] = {.lex_state = 0}, - [285] = {.lex_state = 9}, + [283] = {.lex_state = 9}, + [284] = {.lex_state = 42}, + [285] = {.lex_state = 0}, [286] = {.lex_state = 0}, - [287] = {.lex_state = 42}, - [288] = {.lex_state = 0}, - [289] = {.lex_state = 42}, - [290] = {.lex_state = 9}, + [287] = {.lex_state = 0}, + [288] = {.lex_state = 42}, + [289] = {.lex_state = 0}, + [290] = {.lex_state = 0}, [291] = {.lex_state = 0}, - [292] = {.lex_state = 0}, - [293] = {.lex_state = 42}, + [292] = {.lex_state = 10}, + [293] = {.lex_state = 0}, [294] = {.lex_state = 0}, - [295] = {.lex_state = 10}, + [295] = {.lex_state = 9}, [296] = {.lex_state = 0}, [297] = {.lex_state = 0}, - [298] = {.lex_state = 0}, + [298] = {.lex_state = 9}, [299] = {.lex_state = 0}, - [300] = {.lex_state = 42}, - [301] = {.lex_state = 9}, - [302] = {.lex_state = 0}, + [300] = {.lex_state = 9}, + [301] = {.lex_state = 42}, + [302] = {.lex_state = 42}, [303] = {.lex_state = 9}, - [304] = {.lex_state = 0}, + [304] = {.lex_state = 42}, [305] = {.lex_state = 0}, - [306] = {.lex_state = 42}, - [307] = {.lex_state = 9}, - [308] = {.lex_state = 0}, - [309] = {.lex_state = 0}, + [306] = {.lex_state = 9}, + [307] = {.lex_state = 0}, + [308] = {.lex_state = 42}, + [309] = {.lex_state = 42}, [310] = {.lex_state = 0}, [311] = {.lex_state = 0}, [312] = {.lex_state = 0}, @@ -3111,21 +3119,23 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [318] = {.lex_state = 0}, [319] = {.lex_state = 42}, [320] = {.lex_state = 42}, - [321] = {.lex_state = 42}, + [321] = {.lex_state = 0}, [322] = {.lex_state = 42}, [323] = {.lex_state = 42}, [324] = {.lex_state = 0}, [325] = {.lex_state = 0}, [326] = {.lex_state = 0}, [327] = {.lex_state = 0}, - [328] = {.lex_state = 42}, - [329] = {.lex_state = 0}, - [330] = {.lex_state = 10}, - [331] = {.lex_state = 50}, - [332] = {.lex_state = 0}, - [333] = {.lex_state = 0}, - [334] = {.lex_state = 0}, - [335] = {(TSStateId)(-1)}, + [328] = {.lex_state = 0}, + [329] = {.lex_state = 42}, + [330] = {.lex_state = 0}, + [331] = {.lex_state = 0}, + [332] = {.lex_state = 10}, + [333] = {.lex_state = 42}, + [334] = {.lex_state = 50}, + [335] = {.lex_state = 0}, + [336] = {.lex_state = 0}, + [337] = {(TSStateId)(-1)}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -3150,12 +3160,12 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_class] = ACTIONS(1), [anon_sym_print] = ACTIONS(1), [anon_sym_assert] = ACTIONS(1), + [anon_sym_COMMA] = ACTIONS(1), [anon_sym_return] = ACTIONS(1), [anon_sym_vec] = ACTIONS(1), [anon_sym_map] = ACTIONS(1), [anon_sym_LT] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), - [anon_sym_COMMA] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_let] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), @@ -3191,40 +3201,40 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_none] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(327), - [aux_sym__statement_list] = STATE(11), + [sym_source_file] = STATE(331), + [aux_sym__statement_list] = STATE(10), [sym_doc_comment] = STATE(1), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(191), + [sym_statement] = STATE(193), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [ts_builtin_sym_end] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), @@ -3261,37 +3271,37 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [aux_sym__statement_list] = STATE(9), [sym_doc_comment] = STATE(2), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(190), + [sym_statement] = STATE(192), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(76), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map_item] = STATE(286), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(79), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map_item] = STATE(296), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), [anon_sym_LBRACE] = ACTIONS(9), @@ -3325,40 +3335,40 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_none] = ACTIONS(45), }, [3] = { - [aux_sym__statement_list] = STATE(7), + [aux_sym__statement_list] = STATE(9), [sym_doc_comment] = STATE(3), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(189), + [sym_statement] = STATE(192), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(76), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map_item] = STATE(286), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(79), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map_item] = STATE(296), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), [anon_sym_LBRACE] = ACTIONS(9), @@ -3392,40 +3402,40 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_none] = ACTIONS(45), }, [4] = { - [aux_sym__statement_list] = STATE(7), + [aux_sym__statement_list] = STATE(8), [sym_doc_comment] = STATE(4), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(189), + [sym_statement] = STATE(190), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(76), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map_item] = STATE(286), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(79), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map_item] = STATE(299), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), [anon_sym_LBRACE] = ACTIONS(9), @@ -3459,40 +3469,40 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_none] = ACTIONS(45), }, [5] = { - [aux_sym__statement_list] = STATE(6), + [aux_sym__statement_list] = STATE(11), [sym_doc_comment] = STATE(5), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(188), + [sym_statement] = STATE(191), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(76), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map_item] = STATE(297), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(79), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map_item] = STATE(296), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), [anon_sym_LBRACE] = ACTIONS(9), @@ -3526,43 +3536,43 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_none] = ACTIONS(45), }, [6] = { - [aux_sym__statement_list] = STATE(12), + [aux_sym__statement_list] = STATE(9), [sym_doc_comment] = STATE(6), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(191), + [sym_statement] = STATE(192), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), - [anon_sym_LBRACE] = ACTIONS(55), - [anon_sym_RBRACE] = ACTIONS(57), + [anon_sym_LBRACE] = ACTIONS(9), + [anon_sym_RBRACE] = ACTIONS(55), [anon_sym_import] = ACTIONS(11), [anon_sym_static] = ACTIONS(13), [anon_sym_pure] = ACTIONS(13), @@ -3592,43 +3602,109 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_none] = ACTIONS(45), }, [7] = { - [aux_sym__statement_list] = STATE(12), + [aux_sym__statement_list] = STATE(7), [sym_doc_comment] = STATE(7), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(191), + [sym_statement] = STATE(193), + [sym_block] = STATE(88), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), + [sym_function_declaration] = STATE(88), + [sym_lambda] = STATE(135), + [sym_class_declaration] = STATE(88), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), + [ts_builtin_sym_end] = ACTIONS(57), + [sym_comment] = ACTIONS(3), + [anon_sym_POUND_POUND] = ACTIONS(5), + [anon_sym_LBRACE] = ACTIONS(59), + [anon_sym_import] = ACTIONS(62), + [anon_sym_static] = ACTIONS(65), + [anon_sym_pure] = ACTIONS(65), + [anon_sym_proto] = ACTIONS(68), + [anon_sym_LPAREN] = ACTIONS(71), + [anon_sym_fn] = ACTIONS(74), + [anon_sym_PIPE] = ACTIONS(77), + [anon_sym_class] = ACTIONS(80), + [anon_sym_print] = ACTIONS(83), + [anon_sym_assert] = ACTIONS(86), + [anon_sym_return] = ACTIONS(89), + [anon_sym_let] = ACTIONS(92), + [anon_sym_DASH] = ACTIONS(95), + [anon_sym_BANG] = ACTIONS(95), + [anon_sym_LBRACK] = ACTIONS(98), + [anon_sym_any] = ACTIONS(101), + [anon_sym_int] = ACTIONS(101), + [anon_sym_str] = ACTIONS(101), + [anon_sym_bool] = ACTIONS(101), + [anon_sym_void] = ACTIONS(101), + [aux_sym_identifier_token1] = ACTIONS(104), + [sym_number] = ACTIONS(107), + [sym_string] = ACTIONS(107), + [anon_sym_true] = ACTIONS(110), + [anon_sym_false] = ACTIONS(110), + [anon_sym_error] = ACTIONS(110), + [sym_none] = ACTIONS(113), + }, + [8] = { + [aux_sym__statement_list] = STATE(12), + [sym_doc_comment] = STATE(8), + [sym__line_insensitive_statement] = STATE(89), + [sym_statement] = STATE(193), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), - [anon_sym_LBRACE] = ACTIONS(55), - [anon_sym_RBRACE] = ACTIONS(59), + [anon_sym_LBRACE] = ACTIONS(116), + [anon_sym_RBRACE] = ACTIONS(118), [anon_sym_import] = ACTIONS(11), [anon_sym_static] = ACTIONS(13), [anon_sym_pure] = ACTIONS(13), @@ -3657,109 +3733,43 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_error] = ACTIONS(43), [sym_none] = ACTIONS(45), }, - [8] = { - [aux_sym__statement_list] = STATE(8), - [sym_doc_comment] = STATE(8), - [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(191), - [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), - [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), - [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), - [ts_builtin_sym_end] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [anon_sym_POUND_POUND] = ACTIONS(5), - [anon_sym_LBRACE] = ACTIONS(63), - [anon_sym_import] = ACTIONS(66), - [anon_sym_static] = ACTIONS(69), - [anon_sym_pure] = ACTIONS(69), - [anon_sym_proto] = ACTIONS(72), - [anon_sym_LPAREN] = ACTIONS(75), - [anon_sym_fn] = ACTIONS(78), - [anon_sym_PIPE] = ACTIONS(81), - [anon_sym_class] = ACTIONS(84), - [anon_sym_print] = ACTIONS(87), - [anon_sym_assert] = ACTIONS(90), - [anon_sym_return] = ACTIONS(93), - [anon_sym_let] = ACTIONS(96), - [anon_sym_DASH] = ACTIONS(99), - [anon_sym_BANG] = ACTIONS(99), - [anon_sym_LBRACK] = ACTIONS(102), - [anon_sym_any] = ACTIONS(105), - [anon_sym_int] = ACTIONS(105), - [anon_sym_str] = ACTIONS(105), - [anon_sym_bool] = ACTIONS(105), - [anon_sym_void] = ACTIONS(105), - [aux_sym_identifier_token1] = ACTIONS(108), - [sym_number] = ACTIONS(111), - [sym_string] = ACTIONS(111), - [anon_sym_true] = ACTIONS(114), - [anon_sym_false] = ACTIONS(114), - [anon_sym_error] = ACTIONS(114), - [sym_none] = ACTIONS(117), - }, [9] = { [aux_sym__statement_list] = STATE(12), [sym_doc_comment] = STATE(9), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(191), + [sym_statement] = STATE(193), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), - [anon_sym_LBRACE] = ACTIONS(55), + [anon_sym_LBRACE] = ACTIONS(116), [anon_sym_RBRACE] = ACTIONS(120), [anon_sym_import] = ACTIONS(11), [anon_sym_static] = ACTIONS(13), @@ -3793,40 +3803,40 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [aux_sym__statement_list] = STATE(7), [sym_doc_comment] = STATE(10), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(189), + [sym_statement] = STATE(193), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), + [ts_builtin_sym_end] = ACTIONS(122), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), [anon_sym_LBRACE] = ACTIONS(9), - [anon_sym_RBRACE] = ACTIONS(122), [anon_sym_import] = ACTIONS(11), [anon_sym_static] = ACTIONS(13), [anon_sym_pure] = ACTIONS(13), @@ -3856,43 +3866,43 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_none] = ACTIONS(45), }, [11] = { - [aux_sym__statement_list] = STATE(8), + [aux_sym__statement_list] = STATE(12), [sym_doc_comment] = STATE(11), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(191), + [sym_statement] = STATE(193), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), - [ts_builtin_sym_end] = ACTIONS(124), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), - [anon_sym_LBRACE] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(116), + [anon_sym_RBRACE] = ACTIONS(124), [anon_sym_import] = ACTIONS(11), [anon_sym_static] = ACTIONS(13), [anon_sym_pure] = ACTIONS(13), @@ -3925,67 +3935,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [aux_sym__statement_list] = STATE(12), [sym_doc_comment] = STATE(12), [sym__line_insensitive_statement] = STATE(89), - [sym_statement] = STATE(191), + [sym_statement] = STATE(193), [sym_block] = STATE(88), - [sym_import] = STATE(261), - [sym_qualifier] = STATE(272), - [sym_qualifier_list] = STATE(295), - [sym_proto] = STATE(261), + [sym_import] = STATE(260), + [sym_qualifier] = STATE(277), + [sym_qualifier_list] = STATE(292), + [sym_proto] = STATE(260), [sym_function_declaration] = STATE(88), - [sym_lambda] = STATE(118), + [sym_lambda] = STATE(135), [sym_class_declaration] = STATE(88), - [sym_print] = STATE(261), - [sym_assert] = STATE(261), - [sym_return] = STATE(261), - [sym_expression] = STATE(86), - [sym_parenthesized_expression] = STATE(118), - [sym_access] = STATE(110), - [sym_call] = STATE(118), - [sym_literal] = STATE(118), - [sym_var_decl] = STATE(261), - [sym_assignment] = STATE(261), - [sym_unary_operator] = STATE(53), - [sym_unary_expression] = STATE(118), - [sym_binary_expression] = STATE(118), - [sym_vec] = STATE(118), - [sym_index] = STATE(110), - [sym_slice] = STATE(118), - [sym_map] = STATE(118), - [sym_primitive_type] = STATE(107), - [sym_identifier] = STATE(110), - [sym_bool] = STATE(115), - [aux_sym_qualifier_list_repeat1] = STATE(268), + [sym_print] = STATE(260), + [sym_assert] = STATE(260), + [sym_return] = STATE(260), + [sym_expression] = STATE(97), + [sym_parenthesized_expression] = STATE(135), + [sym_access] = STATE(130), + [sym_call] = STATE(135), + [sym_literal] = STATE(135), + [sym_var_decl] = STATE(260), + [sym_assignment] = STATE(260), + [sym_unary_operator] = STATE(43), + [sym_unary_expression] = STATE(135), + [sym_binary_expression] = STATE(135), + [sym_vec] = STATE(135), + [sym_index] = STATE(130), + [sym_slice] = STATE(135), + [sym_map] = STATE(135), + [sym_primitive_type] = STATE(105), + [sym_identifier] = STATE(130), + [sym_bool] = STATE(123), + [aux_sym_qualifier_list_repeat1] = STATE(270), [sym_comment] = ACTIONS(3), [anon_sym_POUND_POUND] = ACTIONS(5), [anon_sym_LBRACE] = ACTIONS(126), - [anon_sym_RBRACE] = ACTIONS(61), - [anon_sym_import] = ACTIONS(66), - [anon_sym_static] = ACTIONS(69), - [anon_sym_pure] = ACTIONS(69), - [anon_sym_proto] = ACTIONS(72), - [anon_sym_LPAREN] = ACTIONS(75), - [anon_sym_fn] = ACTIONS(78), - [anon_sym_PIPE] = ACTIONS(81), - [anon_sym_class] = ACTIONS(84), - [anon_sym_print] = ACTIONS(87), - [anon_sym_assert] = ACTIONS(90), - [anon_sym_return] = ACTIONS(93), - [anon_sym_let] = ACTIONS(96), - [anon_sym_DASH] = ACTIONS(99), - [anon_sym_BANG] = ACTIONS(99), - [anon_sym_LBRACK] = ACTIONS(102), - [anon_sym_any] = ACTIONS(105), - [anon_sym_int] = ACTIONS(105), - [anon_sym_str] = ACTIONS(105), - [anon_sym_bool] = ACTIONS(105), - [anon_sym_void] = ACTIONS(105), - [aux_sym_identifier_token1] = ACTIONS(108), - [sym_number] = ACTIONS(111), - [sym_string] = ACTIONS(111), - [anon_sym_true] = ACTIONS(114), - [anon_sym_false] = ACTIONS(114), - [anon_sym_error] = ACTIONS(114), - [sym_none] = ACTIONS(117), + [anon_sym_RBRACE] = ACTIONS(57), + [anon_sym_import] = ACTIONS(62), + [anon_sym_static] = ACTIONS(65), + [anon_sym_pure] = ACTIONS(65), + [anon_sym_proto] = ACTIONS(68), + [anon_sym_LPAREN] = ACTIONS(71), + [anon_sym_fn] = ACTIONS(74), + [anon_sym_PIPE] = ACTIONS(77), + [anon_sym_class] = ACTIONS(80), + [anon_sym_print] = ACTIONS(83), + [anon_sym_assert] = ACTIONS(86), + [anon_sym_return] = ACTIONS(89), + [anon_sym_let] = ACTIONS(92), + [anon_sym_DASH] = ACTIONS(95), + [anon_sym_BANG] = ACTIONS(95), + [anon_sym_LBRACK] = ACTIONS(98), + [anon_sym_any] = ACTIONS(101), + [anon_sym_int] = ACTIONS(101), + [anon_sym_str] = ACTIONS(101), + [anon_sym_bool] = ACTIONS(101), + [anon_sym_void] = ACTIONS(101), + [aux_sym_identifier_token1] = ACTIONS(104), + [sym_number] = ACTIONS(107), + [sym_string] = ACTIONS(107), + [anon_sym_true] = ACTIONS(110), + [anon_sym_false] = ACTIONS(110), + [anon_sym_error] = ACTIONS(110), + [sym_none] = ACTIONS(113), }, }; @@ -4124,13 +4134,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(15), 1, sym_doc_comment, - STATE(53), 1, + STATE(43), 1, sym_unary_operator, - STATE(93), 1, + STATE(83), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(151), 2, anon_sym_DASH, @@ -4156,7 +4166,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4190,15 +4200,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, STATE(16), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, - sym_bool, - STATE(168), 1, + STATE(154), 1, sym_expression, - STATE(309), 1, + STATE(162), 1, + sym_bool, + STATE(310), 1, sym_map_item, ACTIONS(33), 2, anon_sym_DASH, @@ -4216,7 +4226,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4250,15 +4260,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RPAREN, STATE(17), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, STATE(146), 1, - sym_primitive_type, - STATE(147), 1, sym_expression, - STATE(157), 1, + STATE(148), 1, + sym_primitive_type, + STATE(162), 1, sym_bool, - STATE(329), 1, + STATE(327), 1, sym_arg_list, ACTIONS(33), 2, anon_sym_DASH, @@ -4276,7 +4286,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4310,15 +4320,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, STATE(18), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, - sym_bool, - STATE(168), 1, + STATE(154), 1, sym_expression, - STATE(297), 1, + STATE(162), 1, + sym_bool, + STATE(310), 1, sym_map_item, ACTIONS(33), 2, anon_sym_DASH, @@ -4336,7 +4346,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4370,15 +4380,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, STATE(19), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, - sym_bool, - STATE(168), 1, + STATE(154), 1, sym_expression, - STATE(309), 1, + STATE(162), 1, + sym_bool, + STATE(310), 1, sym_map_item, ACTIONS(33), 2, anon_sym_DASH, @@ -4396,7 +4406,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4430,15 +4440,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, STATE(20), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, - sym_bool, - STATE(168), 1, + STATE(154), 1, sym_expression, - STATE(309), 1, + STATE(162), 1, + sym_bool, + STATE(299), 1, sym_map_item, ACTIONS(33), 2, anon_sym_DASH, @@ -4456,7 +4466,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4490,15 +4500,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, STATE(21), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, - sym_bool, - STATE(168), 1, + STATE(154), 1, sym_expression, - STATE(286), 1, + STATE(162), 1, + sym_bool, + STATE(296), 1, sym_map_item, ACTIONS(33), 2, anon_sym_DASH, @@ -4516,7 +4526,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4547,19 +4557,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(173), 1, sym_none, ACTIONS(185), 1, - anon_sym_RBRACE, + anon_sym_RPAREN, STATE(22), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, STATE(146), 1, + sym_expression, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, - STATE(168), 1, - sym_expression, - STATE(309), 1, - sym_map_item, + STATE(328), 1, + sym_arg_list, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -4576,7 +4586,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4607,19 +4617,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(173), 1, sym_none, ACTIONS(187), 1, - anon_sym_RPAREN, + anon_sym_RBRACE, STATE(23), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(147), 1, + STATE(154), 1, sym_expression, - STATE(157), 1, + STATE(162), 1, sym_bool, - STATE(324), 1, - sym_arg_list, + STATE(310), 1, + sym_map_item, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -4636,7 +4646,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4670,13 +4680,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(24), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(145), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(150), 1, + sym_expression, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -4694,7 +4704,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4728,14 +4738,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(25), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(147), 1, + sym_expression, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, - STATE(173), 1, - sym_expression, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -4752,7 +4762,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4783,16 +4793,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(173), 1, sym_none, ACTIONS(193), 1, - anon_sym_COLON, + anon_sym_RBRACK, STATE(26), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, - sym_primitive_type, - STATE(151), 1, + STATE(145), 1, sym_expression, - STATE(157), 1, + STATE(148), 1, + sym_primitive_type, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -4810,7 +4820,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4828,8 +4838,6 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, ACTIONS(159), 1, anon_sym_LPAREN, ACTIONS(161), 1, @@ -4841,16 +4849,18 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(173), 1, sym_none, ACTIONS(195), 1, - anon_sym_RBRACK, + anon_sym_LBRACE, STATE(27), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(145), 1, + STATE(140), 1, sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(159), 1, + sym_block, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -4868,7 +4878,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4902,14 +4912,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(28), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, - sym_primitive_type, STATE(148), 1, - sym_expression, - STATE(157), 1, + sym_primitive_type, + STATE(162), 1, sym_bool, + STATE(171), 1, + sym_expression, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -4926,7 +4936,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -4957,17 +4967,17 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(173), 1, sym_none, ACTIONS(199), 1, - anon_sym_RPAREN, + anon_sym_RBRACK, STATE(29), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(145), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, + STATE(163), 1, + sym_expression, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -4984,7 +4994,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5002,47 +5012,47 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, + ACTIONS(201), 1, + anon_sym_LBRACE, STATE(30), 1, sym_doc_comment, - STATE(47), 1, + STATE(43), 1, sym_unary_operator, - STATE(146), 1, + STATE(77), 1, + sym_expression, + STATE(105), 1, sym_primitive_type, - STATE(157), 1, + STATE(117), 1, + sym_block, + STATE(123), 1, sym_bool, - STATE(168), 1, - sym_expression, - STATE(309), 1, - sym_map_item, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - ACTIONS(171), 3, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5072,17 +5082,17 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(201), 1, + ACTIONS(203), 1, anon_sym_RBRACK, STATE(31), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, - STATE(174), 1, + STATE(170), 1, sym_expression, ACTIONS(33), 2, anon_sym_DASH, @@ -5100,7 +5110,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5130,17 +5140,17 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(203), 1, - anon_sym_COLON, + ACTIONS(205), 1, + anon_sym_RBRACK, STATE(32), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, STATE(150), 1, sym_expression, - STATE(157), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -5158,7 +5168,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5188,17 +5198,17 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(205), 1, - anon_sym_RBRACK, + ACTIONS(207), 1, + anon_sym_COLON, STATE(33), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(143), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(152), 1, + sym_expression, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -5216,7 +5226,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5234,6 +5244,8 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, + ACTIONS(155), 1, + anon_sym_LBRACE, ACTIONS(159), 1, anon_sym_LPAREN, ACTIONS(161), 1, @@ -5244,20 +5256,18 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(207), 1, - anon_sym_LBRACE, + ACTIONS(209), 1, + anon_sym_RBRACK, STATE(34), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(121), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(150), 1, + sym_expression, + STATE(162), 1, sym_bool, - STATE(165), 1, - sym_block, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -5274,7 +5284,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5304,18 +5314,18 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(209), 1, - anon_sym_RBRACK, + ACTIONS(211), 1, + anon_sym_COLON, STATE(35), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, - sym_bool, - STATE(175), 1, + STATE(153), 1, sym_expression, + STATE(162), 1, + sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -5332,7 +5342,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5362,17 +5372,17 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(211), 1, + ACTIONS(213), 1, anon_sym_RBRACK, STATE(36), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(145), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(150), 1, + sym_expression, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -5390,7 +5400,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5408,8 +5418,6 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, ACTIONS(159), 1, anon_sym_LPAREN, ACTIONS(161), 1, @@ -5420,18 +5428,20 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(213), 1, - anon_sym_RBRACK, + ACTIONS(195), 1, + anon_sym_LBRACE, STATE(37), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(146), 1, + STATE(138), 1, + sym_expression, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, - STATE(172), 1, - sym_expression, + STATE(184), 1, + sym_block, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -5448,7 +5458,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5466,47 +5476,47 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, - ACTIONS(215), 1, - anon_sym_RPAREN, + ACTIONS(201), 1, + anon_sym_LBRACE, STATE(38), 1, sym_doc_comment, - STATE(47), 1, + STATE(43), 1, sym_unary_operator, - STATE(145), 1, + STATE(74), 1, sym_expression, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, - STATE(157), 1, + STATE(113), 1, + sym_block, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - ACTIONS(171), 3, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5524,47 +5534,47 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(217), 1, - anon_sym_LBRACE, + ACTIONS(215), 1, + anon_sym_RPAREN, STATE(39), 1, sym_doc_comment, - STATE(53), 1, + STATE(49), 1, sym_unary_operator, - STATE(74), 1, - sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(150), 1, + sym_expression, + STATE(162), 1, sym_bool, - STATE(128), 1, - sym_block, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5594,18 +5604,18 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(219), 1, - anon_sym_RBRACK, STATE(40), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(145), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(154), 1, + sym_expression, + STATE(162), 1, sym_bool, + STATE(310), 1, + sym_map_item, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -5622,7 +5632,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5640,6 +5650,8 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, + ACTIONS(155), 1, + anon_sym_LBRACE, ACTIONS(159), 1, anon_sym_LPAREN, ACTIONS(161), 1, @@ -5650,20 +5662,18 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - ACTIONS(207), 1, - anon_sym_LBRACE, + ACTIONS(217), 1, + anon_sym_RPAREN, STATE(41), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(133), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(150), 1, + sym_expression, + STATE(162), 1, sym_bool, - STATE(160), 1, - sym_block, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -5680,7 +5690,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5698,47 +5708,47 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(217), 1, - anon_sym_LBRACE, + ACTIONS(219), 1, + anon_sym_RBRACK, STATE(42), 1, sym_doc_comment, - STATE(53), 1, + STATE(49), 1, sym_unary_operator, - STATE(73), 1, - sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(162), 1, sym_bool, - STATE(120), 1, - sym_block, + STATE(169), 1, + sym_expression, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5751,50 +5761,49 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2314] = 18, + [2314] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, - STATE(43), 1, - sym_doc_comment, - STATE(47), 1, - sym_unary_operator, - STATE(146), 1, - sym_primitive_type, - STATE(149), 1, + ACTIONS(221), 1, + anon_sym_LBRACE, + STATE(76), 1, sym_expression, - STATE(157), 1, + STATE(105), 1, + sym_primitive_type, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - ACTIONS(171), 3, + STATE(43), 2, + sym_doc_comment, + sym_unary_operator, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5807,7 +5816,7 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2388] = 18, + [2386] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, @@ -5824,15 +5833,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, + STATE(43), 1, + sym_unary_operator, STATE(44), 1, sym_doc_comment, - STATE(53), 1, - sym_unary_operator, STATE(70), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -5850,7 +5859,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5863,7 +5872,7 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2462] = 18, + [2460] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, @@ -5882,13 +5891,13 @@ static const uint16_t ts_small_parse_table[] = { sym_none, STATE(45), 1, sym_doc_comment, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(113), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(150), 1, + sym_expression, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -5906,7 +5915,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5919,50 +5928,50 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2536] = 18, + [2534] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, + ACTIONS(221), 1, + anon_sym_LBRACE, + STATE(43), 1, + sym_unary_operator, STATE(46), 1, sym_doc_comment, - STATE(47), 1, - sym_unary_operator, - STATE(132), 1, - sym_expression, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, - STATE(157), 1, + STATE(110), 1, + sym_expression, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - ACTIONS(171), 3, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -5975,49 +5984,50 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2610] = 17, + [2608] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, - STATE(136), 1, + ACTIONS(221), 1, + anon_sym_LBRACE, + STATE(43), 1, + sym_unary_operator, + STATE(47), 1, + sym_doc_comment, + STATE(78), 1, sym_expression, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, - STATE(157), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - STATE(47), 2, - sym_doc_comment, - sym_unary_operator, - ACTIONS(171), 3, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6035,45 +6045,45 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, - STATE(47), 1, + ACTIONS(221), 1, + anon_sym_LBRACE, + STATE(43), 1, sym_unary_operator, STATE(48), 1, sym_doc_comment, - STATE(146), 1, - sym_primitive_type, - STATE(154), 1, + STATE(86), 1, sym_expression, - STATE(157), 1, + STATE(105), 1, + sym_primitive_type, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - ACTIONS(171), 3, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6086,50 +6096,49 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2756] = 18, + [2756] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(221), 1, - anon_sym_LBRACE, - STATE(49), 1, - sym_doc_comment, - STATE(53), 1, - sym_unary_operator, - STATE(94), 1, + STATE(136), 1, sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + STATE(49), 2, + sym_doc_comment, + sym_unary_operator, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6142,7 +6151,7 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2830] = 18, + [2828] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, @@ -6159,15 +6168,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, + STATE(43), 1, + sym_unary_operator, STATE(50), 1, sym_doc_comment, - STATE(53), 1, - sym_unary_operator, - STATE(81), 1, + STATE(72), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -6185,7 +6194,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6198,7 +6207,7 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2904] = 18, + [2902] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, @@ -6215,15 +6224,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, + STATE(43), 1, + sym_unary_operator, STATE(51), 1, sym_doc_comment, - STATE(53), 1, - sym_unary_operator, - STATE(80), 1, + STATE(71), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -6241,7 +6250,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6254,50 +6263,50 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [2978] = 18, + [2976] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(221), 1, - anon_sym_LBRACE, + STATE(49), 1, + sym_unary_operator, STATE(52), 1, sym_doc_comment, - STATE(53), 1, - sym_unary_operator, - STATE(87), 1, + STATE(139), 1, sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6310,7 +6319,7 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [3052] = 17, + [3050] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, @@ -6327,11 +6336,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, - STATE(68), 1, + STATE(43), 1, + sym_unary_operator, + STATE(53), 1, + sym_doc_comment, + STATE(73), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -6339,9 +6352,6 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(41), 2, sym_number, sym_string, - STATE(53), 2, - sym_doc_comment, - sym_unary_operator, ACTIONS(43), 3, anon_sym_true, anon_sym_false, @@ -6352,7 +6362,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6370,45 +6380,45 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(221), 1, - anon_sym_LBRACE, - STATE(53), 1, + STATE(49), 1, sym_unary_operator, STATE(54), 1, sym_doc_comment, - STATE(98), 1, + STATE(141), 1, sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6438,15 +6448,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, - STATE(53), 1, + STATE(43), 1, sym_unary_operator, STATE(55), 1, sym_doc_comment, - STATE(69), 1, + STATE(75), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -6464,7 +6474,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6482,45 +6492,45 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, - STATE(47), 1, + ACTIONS(221), 1, + anon_sym_LBRACE, + STATE(43), 1, sym_unary_operator, STATE(56), 1, sym_doc_comment, - STATE(130), 1, + STATE(82), 1, sym_expression, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, - STATE(157), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - ACTIONS(171), 3, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6538,45 +6548,45 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(221), 1, - anon_sym_LBRACE, - STATE(53), 1, + STATE(49), 1, sym_unary_operator, STATE(57), 1, sym_doc_comment, - STATE(96), 1, - sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(151), 1, + sym_expression, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6594,45 +6604,45 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(221), 1, - anon_sym_LBRACE, - STATE(53), 1, + STATE(49), 1, sym_unary_operator, STATE(58), 1, sym_doc_comment, - STATE(71), 1, + STATE(137), 1, sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6662,15 +6672,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, - STATE(53), 1, + STATE(43), 1, sym_unary_operator, STATE(59), 1, sym_doc_comment, - STATE(72), 1, + STATE(94), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -6688,7 +6698,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6718,16 +6728,16 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, STATE(60), 1, sym_doc_comment, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(153), 1, - sym_expression, - STATE(157), 1, + STATE(162), 1, sym_bool, + STATE(172), 1, + sym_expression, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -6744,7 +6754,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6762,45 +6772,45 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, - STATE(47), 1, + ACTIONS(221), 1, + anon_sym_LBRACE, + STATE(43), 1, sym_unary_operator, STATE(61), 1, sym_doc_comment, - STATE(122), 1, + STATE(102), 1, sym_expression, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, - STATE(157), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(169), 2, + ACTIONS(41), 2, sym_number, sym_string, - ACTIONS(171), 3, + ACTIONS(43), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6830,16 +6840,16 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, STATE(62), 1, sym_doc_comment, - STATE(126), 1, - sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, + STATE(177), 1, + sym_expression, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, @@ -6856,7 +6866,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6886,15 +6896,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, - STATE(53), 1, + STATE(43), 1, sym_unary_operator, STATE(63), 1, sym_doc_comment, - STATE(77), 1, + STATE(69), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -6912,7 +6922,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6942,15 +6952,15 @@ static const uint16_t ts_small_parse_table[] = { sym_none, ACTIONS(221), 1, anon_sym_LBRACE, - STATE(53), 1, + STATE(43), 1, sym_unary_operator, STATE(64), 1, sym_doc_comment, - STATE(75), 1, + STATE(99), 1, sym_expression, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(115), 1, + STATE(123), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -6968,7 +6978,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(135), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -6986,45 +6996,45 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(17), 1, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(35), 1, + ACTIONS(163), 1, anon_sym_LBRACK, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(45), 1, + ACTIONS(173), 1, sym_none, - ACTIONS(221), 1, - anon_sym_LBRACE, - STATE(53), 1, + STATE(49), 1, sym_unary_operator, STATE(65), 1, sym_doc_comment, - STATE(100), 1, + STATE(142), 1, sym_expression, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(115), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, anon_sym_BANG, - ACTIONS(41), 2, + ACTIONS(169), 2, sym_number, sym_string, - ACTIONS(43), 3, + ACTIONS(171), 3, anon_sym_true, anon_sym_false, anon_sym_error, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(118), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -7042,27 +7052,83 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(155), 1, - anon_sym_LBRACE, - ACTIONS(159), 1, + ACTIONS(17), 1, anon_sym_LPAREN, - ACTIONS(161), 1, + ACTIONS(21), 1, anon_sym_PIPE, - ACTIONS(163), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(173), 1, + ACTIONS(45), 1, sym_none, - STATE(47), 1, - sym_unary_operator, - STATE(66), 1, + ACTIONS(221), 1, + anon_sym_LBRACE, + STATE(43), 1, + sym_unary_operator, + STATE(66), 1, sym_doc_comment, + STATE(104), 1, + sym_expression, + STATE(105), 1, + sym_primitive_type, STATE(123), 1, + sym_bool, + ACTIONS(33), 2, + anon_sym_DASH, + anon_sym_BANG, + ACTIONS(41), 2, + sym_number, + sym_string, + ACTIONS(43), 3, + anon_sym_true, + anon_sym_false, + anon_sym_error, + ACTIONS(37), 5, + anon_sym_any, + anon_sym_int, + anon_sym_str, + anon_sym_bool, + anon_sym_void, + STATE(135), 12, + sym_lambda, + sym_parenthesized_expression, + sym_access, + sym_call, + sym_literal, + sym_unary_expression, + sym_binary_expression, + sym_vec, + sym_index, + sym_slice, + sym_map, + sym_identifier, + [4086] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + ACTIONS(155), 1, + anon_sym_LBRACE, + ACTIONS(159), 1, + anon_sym_LPAREN, + ACTIONS(161), 1, + anon_sym_PIPE, + ACTIONS(163), 1, + anon_sym_LBRACK, + ACTIONS(167), 1, + aux_sym_identifier_token1, + ACTIONS(173), 1, + sym_none, + STATE(49), 1, + sym_unary_operator, + STATE(67), 1, + sym_doc_comment, + STATE(144), 1, sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -7080,7 +7146,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -7093,7 +7159,7 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [4086] = 18, + [4160] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, @@ -7110,15 +7176,15 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_identifier_token1, ACTIONS(173), 1, sym_none, - STATE(47), 1, + STATE(49), 1, sym_unary_operator, - STATE(67), 1, + STATE(68), 1, sym_doc_comment, - STATE(145), 1, + STATE(143), 1, sym_expression, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(157), 1, + STATE(162), 1, sym_bool, ACTIONS(33), 2, anon_sym_DASH, @@ -7136,7 +7202,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - STATE(155), 12, + STATE(167), 12, sym_lambda, sym_parenthesized_expression, sym_access, @@ -7149,7 +7215,7 @@ static const uint16_t ts_small_parse_table[] = { sym_slice, sym_map, sym_identifier, - [4160] = 18, + [4234] = 16, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -7163,25 +7229,20 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(68), 1, + STATE(69), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, ACTIONS(237), 3, anon_sym_STAR, anon_sym_SLASH, @@ -7193,7 +7254,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(223), 8, + ACTIONS(223), 12, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7201,49 +7262,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_COLON, - [4231] = 17, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + [4302] = 12, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, + ACTIONS(225), 1, + anon_sym_LF, ACTIONS(227), 1, anon_sym_DOT, ACTIONS(229), 1, anon_sym_LPAREN, - ACTIONS(235), 1, - sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(247), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(69), 1, + STATE(70), 1, sym_doc_comment, - ACTIONS(233), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(237), 3, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(231), 6, - anon_sym_LT, - anon_sym_GT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(245), 10, + ACTIONS(223), 24, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7251,33 +7298,47 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, + anon_sym_LT, + anon_sym_GT, anon_sym_COLON, + anon_sym_DASH, + sym_power_operator, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - [4300] = 15, + [4362] = 15, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, + ACTIONS(225), 1, + anon_sym_LF, ACTIONS(227), 1, anon_sym_DOT, ACTIONS(229), 1, anon_sym_LPAREN, ACTIONS(235), 1, sym_power_operator, - ACTIONS(243), 1, + ACTIONS(239), 1, anon_sym_LBRACK, - ACTIONS(247), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(70), 1, + STATE(71), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, @@ -7286,7 +7347,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(245), 17, + ACTIONS(223), 18, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7294,6 +7355,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -7304,36 +7366,48 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - [4365] = 14, + [4428] = 17, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, + ACTIONS(225), 1, + anon_sym_LF, ACTIONS(227), 1, anon_sym_DOT, ACTIONS(229), 1, anon_sym_LPAREN, ACTIONS(235), 1, sym_power_operator, - ACTIONS(243), 1, + ACTIONS(239), 1, anon_sym_LBRACK, - ACTIONS(247), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + ACTIONS(241), 1, + sym_and_operator, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(71), 1, + STATE(72), 1, sym_doc_comment, + ACTIONS(233), 2, + anon_sym_DASH, + anon_sym_PLUS, ACTIONS(237), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(245), 19, + ACTIONS(231), 6, + anon_sym_LT, + anon_sym_GT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(223), 11, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7341,44 +7415,40 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - anon_sym_LT, - anon_sym_GT, + anon_sym_COMMA, anon_sym_COLON, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - [4428] = 13, + [4498] = 14, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, + ACTIONS(225), 1, + anon_sym_LF, ACTIONS(227), 1, anon_sym_DOT, ACTIONS(229), 1, anon_sym_LPAREN, ACTIONS(235), 1, sym_power_operator, - ACTIONS(243), 1, + ACTIONS(239), 1, anon_sym_LBRACK, - ACTIONS(247), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(72), 1, + STATE(73), 1, sym_doc_comment, - ACTIONS(245), 22, + ACTIONS(237), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(223), 20, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7386,13 +7456,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, anon_sym_DASH, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, @@ -7401,7 +7469,7 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - [4489] = 18, + [4562] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -7413,25 +7481,25 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(251), 1, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(245), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(73), 1, + STATE(74), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -7445,7 +7513,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(249), 8, + ACTIONS(243), 9, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7453,12 +7521,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_COLON, - [4560] = 18, + [4634] = 13, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, + ACTIONS(225), 1, + anon_sym_LF, ACTIONS(227), 1, anon_sym_DOT, ACTIONS(229), 1, @@ -7466,25 +7537,72 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(255), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(74), 1, + STATE(75), 1, sym_doc_comment, - ACTIONS(233), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(223), 23, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + anon_sym_COMMA, + anon_sym_LT, + anon_sym_GT, + anon_sym_COLON, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + [4696] = 18, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(227), 1, + anon_sym_DOT, + ACTIONS(229), 1, + anon_sym_LPAREN, + ACTIONS(235), 1, + sym_power_operator, + ACTIONS(239), 1, + anon_sym_LBRACK, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(251), 1, + anon_sym_LF, + STATE(50), 1, + sym_or_operator, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, + sym_additive_operator, + STATE(55), 1, + sym_multiplicative_operator, + STATE(76), 1, + sym_doc_comment, + ACTIONS(233), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -7498,7 +7616,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(253), 8, + ACTIONS(249), 9, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7506,8 +7624,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_COLON, - [4631] = 12, + [4768] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -7516,45 +7635,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DOT, ACTIONS(229), 1, anon_sym_LPAREN, - ACTIONS(243), 1, + ACTIONS(235), 1, + sym_power_operator, + ACTIONS(239), 1, anon_sym_LBRACK, - ACTIONS(247), 1, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(255), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(75), 1, + STATE(77), 1, sym_doc_comment, - ACTIONS(245), 23, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - anon_sym_LT, - anon_sym_GT, - anon_sym_COLON, + ACTIONS(233), 2, anon_sym_DASH, - sym_power_operator, + anon_sym_PLUS, + ACTIONS(247), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(237), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, + ACTIONS(231), 6, + anon_sym_LT, + anon_sym_GT, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - [4690] = 19, + ACTIONS(253), 9, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + anon_sym_COMMA, + anon_sym_COLON, + [4840] = 19, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -7566,27 +7692,27 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, + ACTIONS(241), 1, + sym_and_operator, ACTIONS(259), 1, anon_sym_LF, ACTIONS(261), 1, - anon_sym_COLON, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + anon_sym_COMMA, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(76), 1, + STATE(78), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -7608,7 +7734,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [4763] = 16, + [4913] = 19, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -7619,23 +7745,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(235), 1, sym_power_operator, - ACTIONS(243), 1, + ACTIONS(239), 1, anon_sym_LBRACK, - ACTIONS(247), 1, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(265), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + ACTIONS(267), 1, + anon_sym_COLON, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(77), 1, + STATE(79), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, + ACTIONS(247), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, ACTIONS(237), 3, anon_sym_STAR, anon_sym_SLASH, @@ -7647,7 +7780,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(245), 11, + ACTIONS(263), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7655,18 +7788,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - anon_sym_COLON, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - [4830] = 5, + [4986] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(78), 1, + STATE(80), 1, sym_doc_comment, - ACTIONS(263), 10, + ACTIONS(269), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7677,7 +7806,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(265), 20, + ACTIONS(271), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -7698,14 +7827,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [4874] = 5, + [5030] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(79), 1, + STATE(81), 1, sym_doc_comment, - ACTIONS(267), 10, + ACTIONS(273), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7716,7 +7845,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(269), 20, + ACTIONS(275), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -7737,7 +7866,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [4918] = 18, + [5074] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -7749,25 +7878,25 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(273), 1, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(279), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(80), 1, + STATE(82), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -7781,7 +7910,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(271), 7, + ACTIONS(277), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7789,7 +7918,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [4988] = 18, + [5144] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -7801,25 +7930,25 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(277), 1, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(283), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(81), 1, + STATE(83), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -7833,7 +7962,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(275), 7, + ACTIONS(281), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7841,14 +7970,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [5058] = 5, + [5214] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(82), 1, + STATE(84), 1, sym_doc_comment, - ACTIONS(279), 10, + ACTIONS(285), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7859,7 +7988,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(281), 20, + ACTIONS(287), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -7880,14 +8009,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5102] = 5, + [5258] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(83), 1, + STATE(85), 1, sym_doc_comment, - ACTIONS(283), 10, + ACTIONS(289), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7898,7 +8027,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(285), 20, + ACTIONS(291), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -7919,14 +8048,66 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5146] = 5, + [5302] = 18, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(227), 1, + anon_sym_DOT, + ACTIONS(229), 1, + anon_sym_LPAREN, + ACTIONS(235), 1, + sym_power_operator, + ACTIONS(239), 1, + anon_sym_LBRACK, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(295), 1, + anon_sym_LF, + STATE(50), 1, + sym_or_operator, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, + sym_additive_operator, + STATE(55), 1, + sym_multiplicative_operator, + STATE(86), 1, + sym_doc_comment, + ACTIONS(233), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(247), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(237), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(231), 6, + anon_sym_LT, + anon_sym_GT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(293), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [5372] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(84), 1, + STATE(87), 1, sym_doc_comment, - ACTIONS(287), 10, + ACTIONS(57), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7937,7 +8118,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(289), 20, + ACTIONS(297), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -7958,14 +8139,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5190] = 5, + [5416] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(85), 1, + STATE(88), 1, sym_doc_comment, - ACTIONS(129), 10, + ACTIONS(299), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -7976,7 +8157,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(139), 20, + ACTIONS(301), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -7997,129 +8178,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5234] = 18, - ACTIONS(135), 1, + [5460] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(227), 1, - anon_sym_DOT, - ACTIONS(229), 1, + STATE(89), 1, + sym_doc_comment, + ACTIONS(303), 10, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(235), 1, - sym_power_operator, - ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, - anon_sym_LBRACK, - ACTIONS(259), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, - sym_or_operator, - STATE(58), 1, - sym_additive_operator, - STATE(59), 1, - sym_multiplicative_operator, - STATE(86), 1, - sym_doc_comment, - ACTIONS(233), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(241), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(237), 3, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(231), 6, - anon_sym_LT, - anon_sym_GT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(257), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [5304] = 18, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(227), 1, - anon_sym_DOT, - ACTIONS(229), 1, - anon_sym_LPAREN, - ACTIONS(235), 1, - sym_power_operator, - ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, - anon_sym_LBRACK, - ACTIONS(293), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, - sym_or_operator, - STATE(58), 1, - sym_additive_operator, - STATE(59), 1, - sym_multiplicative_operator, - STATE(87), 1, - sym_doc_comment, - ACTIONS(233), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(241), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(237), 3, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(231), 6, - anon_sym_LT, - anon_sym_GT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(291), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [5374] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - STATE(88), 1, - sym_doc_comment, - ACTIONS(295), 10, - ts_builtin_sym_end, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_LPAREN, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_BANG, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_BANG, anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(297), 20, + ACTIONS(305), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8140,14 +8217,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5418] = 5, + [5504] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(89), 1, + STATE(90), 1, sym_doc_comment, - ACTIONS(299), 10, + ACTIONS(307), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8158,7 +8235,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(301), 20, + ACTIONS(309), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8179,14 +8256,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5462] = 5, + [5548] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(90), 1, + STATE(91), 1, sym_doc_comment, - ACTIONS(303), 10, + ACTIONS(311), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8197,7 +8274,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(305), 20, + ACTIONS(313), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8218,14 +8295,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5506] = 5, + [5592] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(91), 1, + STATE(92), 1, sym_doc_comment, - ACTIONS(307), 10, + ACTIONS(315), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8236,7 +8313,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(309), 20, + ACTIONS(317), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8257,14 +8334,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5550] = 5, + [5636] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(92), 1, + STATE(93), 1, sym_doc_comment, - ACTIONS(311), 10, + ACTIONS(319), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8275,7 +8352,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(313), 20, + ACTIONS(321), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8296,7 +8373,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5594] = 18, + [5680] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -8308,77 +8385,25 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(317), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, - sym_or_operator, - STATE(58), 1, - sym_additive_operator, - STATE(59), 1, - sym_multiplicative_operator, - STATE(93), 1, - sym_doc_comment, - ACTIONS(233), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(241), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(237), 3, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(231), 6, - anon_sym_LT, - anon_sym_GT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(315), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [5664] = 18, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(227), 1, - anon_sym_DOT, - ACTIONS(229), 1, - anon_sym_LPAREN, - ACTIONS(235), 1, - sym_power_operator, - ACTIONS(239), 1, + ACTIONS(241), 1, sym_and_operator, - ACTIONS(243), 1, - anon_sym_LBRACK, - ACTIONS(321), 1, + ACTIONS(325), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, STATE(94), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -8392,7 +8417,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(319), 7, + ACTIONS(323), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8400,14 +8425,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [5734] = 5, + [5750] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(95), 1, sym_doc_comment, - ACTIONS(61), 10, + ACTIONS(327), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8418,7 +8443,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(323), 20, + ACTIONS(329), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8439,66 +8464,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5778] = 18, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(227), 1, - anon_sym_DOT, - ACTIONS(229), 1, - anon_sym_LPAREN, - ACTIONS(235), 1, - sym_power_operator, - ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, - anon_sym_LBRACK, - ACTIONS(327), 1, - anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, - sym_or_operator, - STATE(58), 1, - sym_additive_operator, - STATE(59), 1, - sym_multiplicative_operator, - STATE(96), 1, - sym_doc_comment, - ACTIONS(233), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(241), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(237), 3, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(231), 6, - anon_sym_LT, - anon_sym_GT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(325), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [5848] = 5, + [5794] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(97), 1, + STATE(96), 1, sym_doc_comment, - ACTIONS(329), 10, + ACTIONS(331), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8509,7 +8482,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(331), 20, + ACTIONS(333), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8530,7 +8503,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [5892] = 18, + [5838] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -8542,25 +8515,25 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(335), 1, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(265), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(98), 1, + STATE(97), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -8574,7 +8547,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(333), 7, + ACTIONS(263), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8582,14 +8555,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [5962] = 5, + [5908] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(99), 1, + STATE(98), 1, sym_doc_comment, - ACTIONS(337), 10, + ACTIONS(335), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8600,7 +8573,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(339), 20, + ACTIONS(337), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8621,7 +8594,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [6006] = 18, + [5952] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, @@ -8633,25 +8606,25 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(235), 1, sym_power_operator, ACTIONS(239), 1, - sym_and_operator, - ACTIONS(243), 1, anon_sym_LBRACK, - ACTIONS(343), 1, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(341), 1, anon_sym_LF, - STATE(44), 1, - sym_comparative_operator, - STATE(55), 1, + STATE(50), 1, sym_or_operator, - STATE(58), 1, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, sym_additive_operator, - STATE(59), 1, + STATE(55), 1, sym_multiplicative_operator, - STATE(100), 1, + STATE(99), 1, sym_doc_comment, ACTIONS(233), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(241), 2, + ACTIONS(247), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, ACTIONS(237), 3, @@ -8665,7 +8638,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(341), 7, + ACTIONS(339), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8673,14 +8646,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [6076] = 5, + [6022] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(101), 1, + STATE(100), 1, sym_doc_comment, - ACTIONS(345), 10, + ACTIONS(343), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8691,7 +8664,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(347), 20, + ACTIONS(345), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8712,14 +8685,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [6120] = 5, + [6066] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(102), 1, + STATE(101), 1, sym_doc_comment, - ACTIONS(349), 10, + ACTIONS(347), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8730,7 +8703,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(351), 20, + ACTIONS(349), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8751,14 +8724,66 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [6164] = 5, - ACTIONS(3), 1, + [6110] = 18, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(227), 1, + anon_sym_DOT, + ACTIONS(229), 1, + anon_sym_LPAREN, + ACTIONS(235), 1, + sym_power_operator, + ACTIONS(239), 1, + anon_sym_LBRACK, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(353), 1, + anon_sym_LF, + STATE(50), 1, + sym_or_operator, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, + sym_additive_operator, + STATE(55), 1, + sym_multiplicative_operator, + STATE(102), 1, + sym_doc_comment, + ACTIONS(233), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(247), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(237), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(231), 6, + anon_sym_LT, + anon_sym_GT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(351), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [6180] = 5, + ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(103), 1, sym_doc_comment, - ACTIONS(353), 10, + ACTIONS(355), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8769,7 +8794,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(355), 20, + ACTIONS(357), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8790,14 +8815,144 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [6208] = 5, + [6224] = 18, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(227), 1, + anon_sym_DOT, + ACTIONS(229), 1, + anon_sym_LPAREN, + ACTIONS(235), 1, + sym_power_operator, + ACTIONS(239), 1, + anon_sym_LBRACK, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(361), 1, + anon_sym_LF, + STATE(50), 1, + sym_or_operator, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, + sym_additive_operator, + STATE(55), 1, + sym_multiplicative_operator, + STATE(104), 1, + sym_doc_comment, + ACTIONS(233), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(247), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(237), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(231), 6, + anon_sym_LT, + anon_sym_GT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(359), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [6294] = 5, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(365), 1, + anon_sym_LF, + STATE(105), 1, + sym_doc_comment, + ACTIONS(363), 29, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_DOT, + anon_sym_static, + anon_sym_pure, + anon_sym_LPAREN, + anon_sym_DASH_GT, + anon_sym_fn, + anon_sym_class, + anon_sym_COMMA, + anon_sym_LT, + anon_sym_GT, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_DASH, + sym_power_operator, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, + [6338] = 5, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(369), 1, + anon_sym_LF, + STATE(106), 1, + sym_doc_comment, + ACTIONS(367), 29, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_DOT, + anon_sym_static, + anon_sym_pure, + anon_sym_LPAREN, + anon_sym_DASH_GT, + anon_sym_fn, + anon_sym_class, + anon_sym_COMMA, + anon_sym_LT, + anon_sym_GT, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_DASH, + sym_power_operator, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, + [6382] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(104), 1, + STATE(107), 1, sym_doc_comment, - ACTIONS(357), 10, + ACTIONS(129), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8808,7 +8963,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(359), 20, + ACTIONS(139), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8829,14 +8984,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [6252] = 5, + [6426] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(105), 1, + STATE(108), 1, sym_doc_comment, - ACTIONS(361), 10, + ACTIONS(371), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8847,7 +9002,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(363), 20, + ACTIONS(373), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8868,14 +9023,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [6296] = 5, + [6470] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(106), 1, + STATE(109), 1, sym_doc_comment, - ACTIONS(365), 10, + ACTIONS(375), 10, ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8886,7 +9041,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(367), 20, + ACTIONS(377), 20, anon_sym_import, anon_sym_static, anon_sym_pure, @@ -8907,16 +9062,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [6340] = 5, + [6514] = 18, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(371), 1, + ACTIONS(227), 1, + anon_sym_DOT, + ACTIONS(229), 1, + anon_sym_LPAREN, + ACTIONS(235), 1, + sym_power_operator, + ACTIONS(239), 1, + anon_sym_LBRACK, + ACTIONS(241), 1, + sym_and_operator, + ACTIONS(381), 1, anon_sym_LF, - STATE(107), 1, + STATE(50), 1, + sym_or_operator, + STATE(51), 1, + sym_comparative_operator, + STATE(53), 1, + sym_additive_operator, + STATE(55), 1, + sym_multiplicative_operator, + STATE(110), 1, + sym_doc_comment, + ACTIONS(233), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(247), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(237), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(231), 6, + anon_sym_LT, + anon_sym_GT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(379), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [6584] = 5, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(385), 1, + anon_sym_LF, + STATE(111), 1, sym_doc_comment, - ACTIONS(369), 28, + ACTIONS(383), 28, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8924,9 +9131,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_static, anon_sym_pure, anon_sym_LPAREN, - anon_sym_DASH_GT, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -8945,16 +9152,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6383] = 5, + [6627] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(375), 1, + ACTIONS(389), 1, anon_sym_LF, - STATE(108), 1, + STATE(112), 1, sym_doc_comment, - ACTIONS(373), 28, + ACTIONS(387), 28, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8962,9 +9169,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_static, anon_sym_pure, anon_sym_LPAREN, - anon_sym_DASH_GT, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -8983,16 +9190,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6426] = 5, + [6670] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(379), 1, + ACTIONS(245), 1, anon_sym_LF, - STATE(109), 1, + STATE(113), 1, sym_doc_comment, - ACTIONS(377), 27, + ACTIONS(243), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9002,10 +9209,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, - anon_sym_EQ, anon_sym_DASH, sym_power_operator, anon_sym_STAR, @@ -9020,18 +9227,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6468] = 6, + [6712] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(383), 1, + ACTIONS(269), 1, anon_sym_LF, - ACTIONS(385), 1, - anon_sym_EQ, - STATE(110), 1, + STATE(114), 1, sym_doc_comment, - ACTIONS(381), 26, + ACTIONS(271), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9041,6 +9246,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9058,16 +9264,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6512] = 5, + [6754] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(389), 1, + ACTIONS(393), 1, anon_sym_LF, - STATE(111), 1, + STATE(115), 1, sym_doc_comment, - ACTIONS(387), 27, + ACTIONS(391), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9077,10 +9283,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, - anon_sym_EQ, anon_sym_DASH, sym_power_operator, anon_sym_STAR, @@ -9095,16 +9301,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6554] = 5, + [6796] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(393), 1, + ACTIONS(397), 1, anon_sym_LF, - STATE(112), 1, + STATE(116), 1, sym_doc_comment, - ACTIONS(391), 26, + ACTIONS(395), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9114,6 +9320,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9131,64 +9338,53 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6595] = 17, - ACTIONS(3), 1, + [6838] = 5, + ACTIONS(135), 1, sym_comment, - ACTIONS(5), 1, + ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(237), 1, - anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(255), 1, + anon_sym_LF, + STATE(117), 1, + sym_doc_comment, + ACTIONS(253), 27, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_DOT, - ACTIONS(397), 1, + anon_sym_static, + anon_sym_pure, anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(113), 1, - sym_doc_comment, - ACTIONS(231), 2, + anon_sym_fn, + anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + anon_sym_COLON, anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(403), 2, + sym_power_operator, + anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(405), 4, + anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(247), 8, - anon_sym_RBRACE, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_RBRACK, - [6660] = 5, + anon_sym_LBRACK, + [6880] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(411), 1, + ACTIONS(401), 1, anon_sym_LF, - STATE(114), 1, + STATE(118), 1, sym_doc_comment, - ACTIONS(409), 26, + ACTIONS(399), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9198,6 +9394,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9215,16 +9412,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6701] = 5, + [6922] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(415), 1, + ACTIONS(405), 1, anon_sym_LF, - STATE(115), 1, + STATE(119), 1, sym_doc_comment, - ACTIONS(413), 26, + ACTIONS(403), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9234,6 +9431,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9251,16 +9449,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6742] = 5, + [6964] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(419), 1, + ACTIONS(409), 1, anon_sym_LF, - STATE(116), 1, + STATE(120), 1, sym_doc_comment, - ACTIONS(417), 26, + ACTIONS(407), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9270,6 +9468,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9287,16 +9486,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6783] = 5, + [7006] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(423), 1, + ACTIONS(413), 1, anon_sym_LF, - STATE(117), 1, + STATE(121), 1, sym_doc_comment, - ACTIONS(421), 26, + ACTIONS(411), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9306,6 +9505,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9323,16 +9523,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6824] = 5, + [7048] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(383), 1, + ACTIONS(417), 1, anon_sym_LF, - STATE(118), 1, + STATE(122), 1, sym_doc_comment, - ACTIONS(381), 26, + ACTIONS(415), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9342,6 +9542,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9359,16 +9560,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6865] = 5, + [7090] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(427), 1, + ACTIONS(421), 1, anon_sym_LF, - STATE(119), 1, + STATE(123), 1, sym_doc_comment, - ACTIONS(425), 26, + ACTIONS(419), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9378,6 +9579,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9395,16 +9597,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6906] = 5, + [7132] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(251), 1, + ACTIONS(425), 1, anon_sym_LF, - STATE(120), 1, + STATE(124), 1, sym_doc_comment, - ACTIONS(249), 26, + ACTIONS(423), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9414,6 +9616,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9431,144 +9634,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [6947] = 19, - ACTIONS(3), 1, + [7174] = 5, + ACTIONS(135), 1, sym_comment, - ACTIONS(5), 1, + ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(237), 1, - anon_sym_STAR, - ACTIONS(395), 1, - anon_sym_DOT, - ACTIONS(397), 1, - anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, ACTIONS(429), 1, - sym_and_operator, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(121), 1, + anon_sym_LF, + STATE(125), 1, sym_doc_comment, - ACTIONS(231), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(399), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(403), 2, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(431), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(405), 4, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(255), 5, + ACTIONS(427), 27, + anon_sym_SEMI, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - [7016] = 18, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(237), 1, - anon_sym_STAR, - ACTIONS(395), 1, anon_sym_DOT, - ACTIONS(397), 1, + anon_sym_static, + anon_sym_pure, anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, - sym_and_operator, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(122), 1, - sym_doc_comment, - ACTIONS(231), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(399), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(403), 2, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(405), 4, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(247), 7, - anon_sym_RBRACE, - anon_sym_RPAREN, + anon_sym_fn, + anon_sym_class, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - anon_sym_RBRACK, - [7083] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(237), 1, - anon_sym_STAR, - ACTIONS(395), 1, - anon_sym_DOT, - ACTIONS(397), 1, - anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(123), 1, - sym_doc_comment, - ACTIONS(245), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + anon_sym_COLON, anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(403), 2, + sym_power_operator, + anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(247), 12, - anon_sym_RBRACE, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, + anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, @@ -9576,17 +9670,17 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_RBRACK, - [7146] = 5, + anon_sym_LBRACK, + [7216] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(435), 1, + ACTIONS(433), 1, anon_sym_LF, - STATE(124), 1, + STATE(126), 1, sym_doc_comment, - ACTIONS(433), 26, + ACTIONS(431), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9596,6 +9690,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9613,16 +9708,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7187] = 5, + [7258] = 5, + ACTIONS(133), 1, + anon_sym_LF, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(439), 1, - anon_sym_LF, - STATE(125), 1, + STATE(127), 1, sym_doc_comment, - ACTIONS(437), 26, + ACTIONS(131), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9632,6 +9727,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9649,43 +9745,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7228] = 15, - ACTIONS(3), 1, + [7300] = 5, + ACTIONS(135), 1, sym_comment, - ACTIONS(5), 1, + ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(237), 1, - anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(437), 1, + anon_sym_LF, + STATE(128), 1, + sym_doc_comment, + ACTIONS(435), 27, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_DOT, - ACTIONS(397), 1, + anon_sym_static, + anon_sym_pure, anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(126), 1, - sym_doc_comment, - ACTIONS(245), 2, + anon_sym_fn, + anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, - ACTIONS(403), 2, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 14, - anon_sym_RBRACE, - anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_COLON, anon_sym_DASH, + sym_power_operator, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, @@ -9694,17 +9781,17 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_RBRACK, - [7289] = 5, + anon_sym_LBRACK, + [7342] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(443), 1, + ACTIONS(441), 1, anon_sym_LF, - STATE(127), 1, + STATE(129), 1, sym_doc_comment, - ACTIONS(441), 26, + ACTIONS(439), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9714,6 +9801,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9731,16 +9819,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7330] = 5, + [7384] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(255), 1, + ACTIONS(445), 1, anon_sym_LF, - STATE(128), 1, + ACTIONS(447), 1, + anon_sym_EQ, + STATE(130), 1, sym_doc_comment, - ACTIONS(253), 26, + ACTIONS(443), 26, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9767,16 +9857,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7371] = 5, + [7428] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(447), 1, + ACTIONS(451), 1, anon_sym_LF, - STATE(129), 1, + STATE(131), 1, sym_doc_comment, - ACTIONS(445), 26, + ACTIONS(449), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9786,6 +9876,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9803,60 +9894,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7412] = 13, - ACTIONS(3), 1, + [7470] = 5, + ACTIONS(133), 1, + anon_sym_LF, + ACTIONS(135), 1, sym_comment, - ACTIONS(5), 1, + ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(395), 1, - anon_sym_DOT, - ACTIONS(397), 1, - anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(130), 1, - sym_doc_comment, - ACTIONS(245), 3, - anon_sym_LT, - anon_sym_GT, - anon_sym_STAR, - ACTIONS(247), 16, - anon_sym_RBRACE, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_DASH, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - anon_sym_RBRACK, - [7469] = 5, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(451), 1, - anon_sym_LF, - STATE(131), 1, + STATE(132), 1, sym_doc_comment, - ACTIONS(449), 26, + ACTIONS(131), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9866,6 +9913,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -9883,38 +9931,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7510] = 12, - ACTIONS(3), 1, + [7512] = 5, + ACTIONS(135), 1, sym_comment, - ACTIONS(5), 1, + ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(395), 1, + ACTIONS(455), 1, + anon_sym_LF, + STATE(133), 1, + sym_doc_comment, + ACTIONS(453), 27, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_DOT, - ACTIONS(397), 1, + anon_sym_static, + anon_sym_pure, anon_sym_LPAREN, - ACTIONS(407), 1, - anon_sym_LBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(132), 1, - sym_doc_comment, - ACTIONS(245), 3, + anon_sym_fn, + anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, - anon_sym_STAR, - ACTIONS(247), 17, - anon_sym_RBRACE, - anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_COLON, anon_sym_DASH, sym_power_operator, + anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PLUS, @@ -9925,67 +9967,17 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_RBRACK, - [7565] = 19, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(237), 1, - anon_sym_STAR, - ACTIONS(395), 1, - anon_sym_DOT, - ACTIONS(397), 1, - anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, anon_sym_LBRACK, - ACTIONS(429), 1, - sym_and_operator, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(133), 1, - sym_doc_comment, - ACTIONS(231), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(399), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(403), 2, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(431), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(405), 4, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - ACTIONS(251), 5, - anon_sym_RBRACE, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - [7634] = 5, - ACTIONS(133), 1, - anon_sym_LF, + [7554] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, + ACTIONS(459), 1, + anon_sym_LF, STATE(134), 1, sym_doc_comment, - ACTIONS(131), 26, + ACTIONS(457), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -9995,6 +9987,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -10012,16 +10005,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7675] = 5, + [7596] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(283), 1, + ACTIONS(445), 1, anon_sym_LF, STATE(135), 1, sym_doc_comment, - ACTIONS(285), 26, + ACTIONS(443), 27, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -10031,6 +10024,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, anon_sym_fn, anon_sym_class, + anon_sym_COMMA, anon_sym_LT, anon_sym_GT, anon_sym_COLON, @@ -10048,153 +10042,187 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, anon_sym_LBRACK, - [7716] = 19, + [7638] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(136), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - ACTIONS(225), 5, + ACTIONS(251), 5, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, anon_sym_RBRACK, - [7785] = 5, - ACTIONS(133), 1, - anon_sym_LF, - ACTIONS(135), 1, + [7707] = 18, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(137), 1, - sym_doc_comment, - ACTIONS(131), 26, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, + ACTIONS(237), 1, + anon_sym_STAR, + ACTIONS(461), 1, anon_sym_DOT, - anon_sym_static, - anon_sym_pure, + ACTIONS(463), 1, anon_sym_LPAREN, - anon_sym_fn, - anon_sym_class, + ACTIONS(467), 1, + sym_power_operator, + ACTIONS(473), 1, + sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, + STATE(137), 1, + sym_doc_comment, + ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - anon_sym_COLON, + ACTIONS(465), 2, anon_sym_DASH, - sym_power_operator, - anon_sym_STAR, + anon_sym_PLUS, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - sym_and_operator, + ACTIONS(225), 7, + anon_sym_RBRACE, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_LBRACK, - [7826] = 5, - ACTIONS(135), 1, + anon_sym_RBRACK, + [7774] = 19, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(455), 1, - anon_sym_LF, - STATE(138), 1, - sym_doc_comment, - ACTIONS(453), 26, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, + ACTIONS(237), 1, + anon_sym_STAR, + ACTIONS(461), 1, anon_sym_DOT, - anon_sym_static, - anon_sym_pure, + ACTIONS(463), 1, anon_sym_LPAREN, - anon_sym_fn, - anon_sym_class, + ACTIONS(467), 1, + sym_power_operator, + ACTIONS(473), 1, + sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, + STATE(138), 1, + sym_doc_comment, + ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - anon_sym_COLON, + ACTIONS(465), 2, anon_sym_DASH, - sym_power_operator, - anon_sym_STAR, + anon_sym_PLUS, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, + ACTIONS(475), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - anon_sym_LBRACK, - [7867] = 5, - ACTIONS(135), 1, + ACTIONS(245), 5, + anon_sym_RBRACE, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + [7843] = 12, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(459), 1, - anon_sym_LF, - STATE(139), 1, - sym_doc_comment, - ACTIONS(457), 26, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, + ACTIONS(461), 1, anon_sym_DOT, - anon_sym_static, - anon_sym_pure, + ACTIONS(463), 1, anon_sym_LPAREN, - anon_sym_fn, - anon_sym_class, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, + STATE(139), 1, + sym_doc_comment, + ACTIONS(223), 3, anon_sym_LT, anon_sym_GT, + anon_sym_STAR, + ACTIONS(225), 17, + anon_sym_RBRACE, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_COLON, anon_sym_DASH, sym_power_operator, - anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PLUS, @@ -10205,104 +10233,138 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_LBRACK, - [7908] = 5, - ACTIONS(135), 1, + anon_sym_RBRACK, + [7898] = 19, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, + ACTIONS(237), 1, + anon_sym_STAR, + ACTIONS(461), 1, + anon_sym_DOT, ACTIONS(463), 1, - anon_sym_LF, + anon_sym_LPAREN, + ACTIONS(467), 1, + sym_power_operator, + ACTIONS(473), 1, + sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(140), 1, sym_doc_comment, - ACTIONS(461), 26, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_DOT, - anon_sym_static, - anon_sym_pure, - anon_sym_LPAREN, - anon_sym_fn, - anon_sym_class, + ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - anon_sym_COLON, + ACTIONS(465), 2, anon_sym_DASH, - sym_power_operator, - anon_sym_STAR, + anon_sym_PLUS, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, + ACTIONS(475), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - anon_sym_LBRACK, - [7949] = 5, - ACTIONS(135), 1, + ACTIONS(255), 5, + anon_sym_RBRACE, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + [7967] = 17, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, + ACTIONS(237), 1, + anon_sym_STAR, + ACTIONS(461), 1, + anon_sym_DOT, + ACTIONS(463), 1, + anon_sym_LPAREN, ACTIONS(467), 1, - anon_sym_LF, + sym_power_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(141), 1, sym_doc_comment, - ACTIONS(465), 26, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_DOT, - anon_sym_static, - anon_sym_pure, - anon_sym_LPAREN, - anon_sym_fn, - anon_sym_class, + ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - anon_sym_COLON, + ACTIONS(465), 2, anon_sym_DASH, - sym_power_operator, - anon_sym_STAR, + anon_sym_PLUS, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, + ACTIONS(225), 8, + anon_sym_RBRACE, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_LBRACK, - [7990] = 5, - ACTIONS(135), 1, + anon_sym_RBRACK, + [8032] = 13, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(471), 1, - anon_sym_LF, - STATE(142), 1, - sym_doc_comment, - ACTIONS(469), 26, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, + ACTIONS(461), 1, anon_sym_DOT, - anon_sym_static, - anon_sym_pure, + ACTIONS(463), 1, anon_sym_LPAREN, - anon_sym_fn, - anon_sym_class, + ACTIONS(467), 1, + sym_power_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, + STATE(142), 1, + sym_doc_comment, + ACTIONS(223), 3, anon_sym_LT, anon_sym_GT, + anon_sym_STAR, + ACTIONS(225), 16, + anon_sym_RBRACE, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_COLON, anon_sym_DASH, - sym_power_operator, - anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PLUS, @@ -10313,81 +10375,44 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_LBRACK, - [8031] = 21, + anon_sym_RBRACK, + [8089] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, + ACTIONS(477), 1, anon_sym_LBRACK, - ACTIONS(429), 1, - sym_and_operator, - ACTIONS(473), 1, - anon_sym_COMMA, - ACTIONS(475), 1, - anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(143), 1, sym_doc_comment, - STATE(294), 1, - aux_sym_arg_list_repeat1, - ACTIONS(231), 2, + ACTIONS(223), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(405), 4, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - [8102] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - STATE(144), 1, - sym_doc_comment, - ACTIONS(373), 4, - anon_sym_LT, - anon_sym_GT, - anon_sym_DASH, - anon_sym_STAR, - ACTIONS(375), 21, - anon_sym_LBRACE, + ACTIONS(225), 14, anon_sym_RBRACE, - anon_sym_DOT, - anon_sym_LPAREN, anon_sym_RPAREN, - anon_sym_DASH_GT, anon_sym_COMMA, anon_sym_COLON, - sym_power_operator, - anon_sym_SLASH, - anon_sym_PERCENT, + anon_sym_DASH, anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, @@ -10396,81 +10421,46 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_LBRACK, anon_sym_RBRACK, - [8141] = 19, + [8150] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, + ACTIONS(477), 1, anon_sym_LBRACK, - ACTIONS(429), 1, - sym_and_operator, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(145), 1, + STATE(68), 1, + sym_additive_operator, + STATE(144), 1, sym_doc_comment, - ACTIONS(231), 2, + ACTIONS(223), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(477), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(405), 4, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - [8208] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - STATE(146), 1, - sym_doc_comment, - ACTIONS(369), 4, - anon_sym_LT, - anon_sym_GT, - anon_sym_DASH, - anon_sym_STAR, - ACTIONS(371), 21, - anon_sym_LBRACE, + ACTIONS(225), 12, anon_sym_RBRACE, - anon_sym_DOT, - anon_sym_LPAREN, anon_sym_RPAREN, - anon_sym_DASH_GT, anon_sym_COMMA, anon_sym_COLON, - sym_power_operator, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, @@ -10478,387 +10468,474 @@ static const uint16_t ts_small_parse_table[] = { sym_and_operator, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_LBRACK, anon_sym_RBRACK, - [8247] = 21, + [8213] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, ACTIONS(479), 1, - anon_sym_RPAREN, - ACTIONS(481), 1, anon_sym_COMMA, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + ACTIONS(481), 1, + anon_sym_RBRACK, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(147), 1, + STATE(68), 1, + sym_additive_operator, + STATE(145), 1, sym_doc_comment, - STATE(296), 1, + STATE(286), 1, aux_sym_arg_list_repeat1, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [8318] = 21, + [8284] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, ACTIONS(483), 1, - anon_sym_COMMA, + anon_sym_RPAREN, ACTIONS(485), 1, - anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + anon_sym_COMMA, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(148), 1, + STATE(68), 1, + sym_additive_operator, + STATE(146), 1, sym_doc_comment, - STATE(299), 1, + STATE(285), 1, aux_sym_arg_list_repeat1, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [8389] = 19, + [8355] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(487), 1, + anon_sym_COMMA, + ACTIONS(489), 1, + anon_sym_RBRACK, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(149), 1, + STATE(68), 1, + sym_additive_operator, + STATE(147), 1, sym_doc_comment, + STATE(289), 1, + aux_sym_arg_list_repeat1, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(487), 2, + ACTIONS(471), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + [8426] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + STATE(148), 1, + sym_doc_comment, + ACTIONS(363), 4, + anon_sym_LT, + anon_sym_GT, + anon_sym_DASH, + anon_sym_STAR, + ACTIONS(365), 21, + anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_DASH_GT, anon_sym_COMMA, - ACTIONS(405), 4, + anon_sym_COLON, + sym_power_operator, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [8455] = 20, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, + anon_sym_RBRACK, + [8465] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(237), 1, + STATE(149), 1, + sym_doc_comment, + ACTIONS(367), 4, + anon_sym_LT, + anon_sym_GT, + anon_sym_DASH, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(369), 21, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_DOT, - ACTIONS(397), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + anon_sym_RPAREN, + anon_sym_DASH_GT, + anon_sym_COMMA, + anon_sym_COLON, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, sym_and_operator, - ACTIONS(489), 1, - anon_sym_COLON, - ACTIONS(491), 1, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + [8504] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + ACTIONS(237), 1, + anon_sym_STAR, + ACTIONS(461), 1, + anon_sym_DOT, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(467), 1, + sym_power_operator, + ACTIONS(473), 1, + sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(150), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(491), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [8523] = 20, + [8571] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - ACTIONS(493), 1, - anon_sym_COLON, - ACTIONS(495), 1, - anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(151), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(493), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [8591] = 5, + [8637] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(152), 1, - sym_doc_comment, - ACTIONS(391), 3, - anon_sym_LT, - anon_sym_GT, + ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(393), 20, - anon_sym_RBRACE, + ACTIONS(461), 1, anon_sym_DOT, + ACTIONS(463), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(467), 1, + sym_power_operator, + ACTIONS(473), 1, + sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(495), 1, anon_sym_COLON, + ACTIONS(497), 1, + anon_sym_RBRACK, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, + STATE(152), 1, + sym_doc_comment, + ACTIONS(231), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(465), 2, anon_sym_DASH, - sym_power_operator, + anon_sym_PLUS, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, + ACTIONS(475), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - anon_sym_LBRACK, - anon_sym_RBRACK, - [8628] = 19, + [8705] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - ACTIONS(497), 1, - anon_sym_RPAREN, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(499), 1, + anon_sym_COLON, + ACTIONS(501), 1, + anon_sym_RBRACK, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(153), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [8693] = 19, + [8773] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - ACTIONS(499), 1, - anon_sym_RPAREN, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(503), 1, + anon_sym_COLON, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, STATE(154), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [8758] = 5, + [8838] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(155), 1, sym_doc_comment, - ACTIONS(381), 3, + ACTIONS(131), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(383), 20, + ACTIONS(133), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -10879,18 +10956,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [8795] = 5, + [8875] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(156), 1, sym_doc_comment, - ACTIONS(417), 3, + ACTIONS(431), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(419), 20, + ACTIONS(433), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -10911,18 +10988,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [8832] = 5, + [8912] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(157), 1, sym_doc_comment, - ACTIONS(413), 3, + ACTIONS(415), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(415), 20, + ACTIONS(417), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -10943,18 +11020,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [8869] = 5, + [8949] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(158), 1, sym_doc_comment, - ACTIONS(437), 3, + ACTIONS(449), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(439), 20, + ACTIONS(451), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -10975,18 +11052,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [8906] = 5, + [8986] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(159), 1, sym_doc_comment, - ACTIONS(453), 3, + ACTIONS(253), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(455), 20, + ACTIONS(255), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11007,18 +11084,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [8943] = 5, + [9023] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(160), 1, sym_doc_comment, - ACTIONS(249), 3, + ACTIONS(383), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(251), 20, + ACTIONS(385), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11039,18 +11116,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [8980] = 5, + [9060] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(161), 1, sym_doc_comment, - ACTIONS(425), 3, + ACTIONS(395), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(427), 20, + ACTIONS(397), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11071,18 +11148,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9017] = 5, + [9097] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(162), 1, sym_doc_comment, - ACTIONS(377), 3, + ACTIONS(419), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(379), 20, + ACTIONS(421), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11103,108 +11180,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9054] = 5, + [9134] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(163), 1, - sym_doc_comment, - ACTIONS(433), 3, - anon_sym_LT, - anon_sym_GT, + ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(435), 20, - anon_sym_RBRACE, + ACTIONS(461), 1, anon_sym_DOT, + ACTIONS(463), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_DASH, + ACTIONS(467), 1, sym_power_operator, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, + ACTIONS(473), 1, sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, + ACTIONS(477), 1, anon_sym_LBRACK, + ACTIONS(505), 1, anon_sym_RBRACK, - [9091] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - STATE(164), 1, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, + STATE(163), 1, sym_doc_comment, - ACTIONS(445), 3, + ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - anon_sym_STAR, - ACTIONS(447), 20, - anon_sym_RBRACE, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, + ACTIONS(465), 2, anon_sym_DASH, - sym_power_operator, + anon_sym_PLUS, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - sym_and_operator, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - anon_sym_LBRACK, - anon_sym_RBRACK, - [9128] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - STATE(165), 1, - sym_doc_comment, - ACTIONS(253), 3, - anon_sym_LT, - anon_sym_GT, - anon_sym_STAR, - ACTIONS(255), 20, - anon_sym_RBRACE, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_DASH, - sym_power_operator, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_PLUS, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - anon_sym_LBRACK, - anon_sym_RBRACK, - [9165] = 5, + [9199] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(166), 1, + STATE(164), 1, sym_doc_comment, ACTIONS(457), 3, anon_sym_LT, @@ -11231,18 +11258,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9202] = 5, + [9236] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(167), 1, + STATE(165), 1, sym_doc_comment, - ACTIONS(449), 3, + ACTIONS(411), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(451), 20, + ACTIONS(413), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11253,74 +11280,28 @@ static const uint16_t ts_small_parse_table[] = { sym_power_operator, anon_sym_SLASH, anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_GT_EQ, - sym_and_operator, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - anon_sym_LBRACK, - anon_sym_RBRACK, - [9239] = 19, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(237), 1, - anon_sym_STAR, - ACTIONS(395), 1, - anon_sym_DOT, - ACTIONS(397), 1, - anon_sym_LPAREN, - ACTIONS(401), 1, - sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, - sym_and_operator, - ACTIONS(501), 1, - anon_sym_COLON, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, - sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, - sym_comparative_operator, - STATE(168), 1, - sym_doc_comment, - ACTIONS(231), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(399), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(403), 2, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(431), 2, - anon_sym_PIPE_PIPE, - anon_sym_CARET_CARET, - ACTIONS(405), 4, + anon_sym_PLUS, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [9304] = 5, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, + anon_sym_RBRACK, + [9273] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(169), 1, + STATE(166), 1, sym_doc_comment, - ACTIONS(387), 3, + ACTIONS(439), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(389), 20, + ACTIONS(441), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11341,18 +11322,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9341] = 5, + [9310] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(170), 1, + STATE(167), 1, sym_doc_comment, - ACTIONS(131), 3, + ACTIONS(443), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(133), 20, + ACTIONS(445), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11373,18 +11354,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9378] = 5, + [9347] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(171), 1, + STATE(168), 1, sym_doc_comment, - ACTIONS(409), 3, + ACTIONS(403), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(411), 20, + ACTIONS(405), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11405,202 +11386,376 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9415] = 19, + [9384] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - ACTIONS(503), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(507), 1, anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(172), 1, + STATE(68), 1, + sym_additive_operator, + STATE(169), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [9480] = 19, + [9449] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - ACTIONS(505), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(509), 1, anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(173), 1, + STATE(68), 1, + sym_additive_operator, + STATE(170), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [9545] = 19, + [9514] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, - anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(473), 1, sym_and_operator, - ACTIONS(507), 1, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(511), 1, anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(174), 1, + STATE(68), 1, + sym_additive_operator, + STATE(171), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [9610] = 19, + [9579] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(237), 1, anon_sym_STAR, - ACTIONS(395), 1, + ACTIONS(461), 1, anon_sym_DOT, - ACTIONS(397), 1, + ACTIONS(463), 1, anon_sym_LPAREN, - ACTIONS(401), 1, + ACTIONS(467), 1, sym_power_operator, - ACTIONS(407), 1, + ACTIONS(473), 1, + sym_and_operator, + ACTIONS(477), 1, anon_sym_LBRACK, - ACTIONS(429), 1, + ACTIONS(513), 1, + anon_sym_RPAREN, + STATE(58), 1, + sym_or_operator, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, + sym_comparative_operator, + STATE(68), 1, + sym_additive_operator, + STATE(172), 1, + sym_doc_comment, + ACTIONS(231), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(465), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(469), 2, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(475), 2, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + ACTIONS(471), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + [9644] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + STATE(173), 1, + sym_doc_comment, + ACTIONS(131), 3, + anon_sym_LT, + anon_sym_GT, + anon_sym_STAR, + ACTIONS(133), 20, + anon_sym_RBRACE, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_DASH, + sym_power_operator, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, sym_and_operator, - ACTIONS(509), 1, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, anon_sym_RBRACK, - STATE(56), 1, - sym_multiplicative_operator, - STATE(61), 1, + [9681] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + STATE(174), 1, + sym_doc_comment, + ACTIONS(399), 3, + anon_sym_LT, + anon_sym_GT, + anon_sym_STAR, + ACTIONS(401), 20, + anon_sym_RBRACE, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_DASH, + sym_power_operator, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, + anon_sym_RBRACK, + [9718] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + STATE(175), 1, + sym_doc_comment, + ACTIONS(271), 3, + anon_sym_LT, + anon_sym_GT, + anon_sym_STAR, + ACTIONS(269), 20, + anon_sym_RBRACE, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_DASH, + sym_power_operator, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, + anon_sym_RBRACK, + [9755] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + STATE(176), 1, + sym_doc_comment, + ACTIONS(407), 3, + anon_sym_LT, + anon_sym_GT, + anon_sym_STAR, + ACTIONS(409), 20, + anon_sym_RBRACE, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_DASH, + sym_power_operator, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + sym_and_operator, + anon_sym_PIPE_PIPE, + anon_sym_CARET_CARET, + anon_sym_LBRACK, + anon_sym_RBRACK, + [9792] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + ACTIONS(237), 1, + anon_sym_STAR, + ACTIONS(461), 1, + anon_sym_DOT, + ACTIONS(463), 1, + anon_sym_LPAREN, + ACTIONS(467), 1, + sym_power_operator, + ACTIONS(473), 1, + sym_and_operator, + ACTIONS(477), 1, + anon_sym_LBRACK, + ACTIONS(515), 1, + anon_sym_RPAREN, + STATE(58), 1, sym_or_operator, - STATE(62), 1, - sym_additive_operator, - STATE(66), 1, + STATE(65), 1, + sym_multiplicative_operator, + STATE(67), 1, sym_comparative_operator, - STATE(175), 1, + STATE(68), 1, + sym_additive_operator, + STATE(177), 1, sym_doc_comment, ACTIONS(231), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(399), 2, + ACTIONS(465), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(403), 2, + ACTIONS(469), 2, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(431), 2, + ACTIONS(475), 2, anon_sym_PIPE_PIPE, anon_sym_CARET_CARET, - ACTIONS(405), 4, + ACTIONS(471), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, - [9675] = 5, + [9857] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(176), 1, + STATE(178), 1, sym_doc_comment, - ACTIONS(421), 3, + ACTIONS(453), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(423), 20, + ACTIONS(455), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11621,18 +11776,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9712] = 5, + [9894] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(177), 1, + STATE(179), 1, sym_doc_comment, - ACTIONS(469), 3, + ACTIONS(387), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(471), 20, + ACTIONS(389), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11653,18 +11808,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9749] = 5, + [9931] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(178), 1, + STATE(180), 1, sym_doc_comment, - ACTIONS(441), 3, + ACTIONS(435), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(443), 20, + ACTIONS(437), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11685,18 +11840,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9786] = 5, + [9968] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(179), 1, + STATE(181), 1, sym_doc_comment, - ACTIONS(461), 3, + ACTIONS(427), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(463), 20, + ACTIONS(429), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11717,18 +11872,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9823] = 5, + [10005] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(180), 1, + STATE(182), 1, sym_doc_comment, - ACTIONS(131), 3, + ACTIONS(423), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(133), 20, + ACTIONS(425), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11749,18 +11904,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9860] = 5, + [10042] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(181), 1, + STATE(183), 1, sym_doc_comment, - ACTIONS(285), 3, + ACTIONS(391), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(283), 20, + ACTIONS(393), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11781,18 +11936,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9897] = 5, + [10079] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(182), 1, + STATE(184), 1, sym_doc_comment, - ACTIONS(465), 3, + ACTIONS(243), 3, anon_sym_LT, anon_sym_GT, anon_sym_STAR, - ACTIONS(467), 20, + ACTIONS(245), 20, anon_sym_RBRACE, anon_sym_DOT, anon_sym_LPAREN, @@ -11813,14 +11968,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_CARET, anon_sym_LBRACK, anon_sym_RBRACK, - [9934] = 5, + [10116] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(183), 1, + STATE(185), 1, sym_doc_comment, - ACTIONS(511), 8, + ACTIONS(517), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_PIPE, @@ -11829,7 +11984,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(513), 10, + ACTIONS(519), 10, anon_sym_any, anon_sym_int, anon_sym_str, @@ -11840,14 +11995,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [9966] = 5, + [10148] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(184), 1, + STATE(186), 1, sym_doc_comment, - ACTIONS(515), 8, + ACTIONS(521), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_PIPE, @@ -11856,7 +12011,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(517), 10, + ACTIONS(523), 10, anon_sym_any, anon_sym_int, anon_sym_str, @@ -11867,14 +12022,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [9998] = 5, + [10180] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(185), 1, + STATE(187), 1, sym_doc_comment, - ACTIONS(519), 8, + ACTIONS(525), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_PIPE, @@ -11883,7 +12038,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(521), 10, + ACTIONS(527), 10, anon_sym_any, anon_sym_int, anon_sym_str, @@ -11894,14 +12049,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [10030] = 5, + [10212] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(186), 1, + STATE(188), 1, sym_doc_comment, - ACTIONS(523), 8, + ACTIONS(529), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_PIPE, @@ -11910,7 +12065,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(525), 10, + ACTIONS(531), 10, anon_sym_any, anon_sym_int, anon_sym_str, @@ -11921,14 +12076,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [10062] = 5, + [10244] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(187), 1, + STATE(189), 1, sym_doc_comment, - ACTIONS(527), 8, + ACTIONS(533), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_PIPE, @@ -11937,7 +12092,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, sym_number, sym_string, - ACTIONS(529), 10, + ACTIONS(535), 10, anon_sym_any, anon_sym_int, anon_sym_str, @@ -11948,7 +12103,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_error, sym_none, - [10094] = 15, + [10276] = 15, ACTIONS(19), 1, anon_sym_fn, ACTIONS(23), 1, @@ -11957,23 +12112,23 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(531), 1, + ACTIONS(537), 1, anon_sym_SEMI, - ACTIONS(533), 1, + ACTIONS(539), 1, anon_sym_LF, - ACTIONS(535), 1, + ACTIONS(541), 1, anon_sym_LBRACE, - ACTIONS(537), 1, + ACTIONS(543), 1, anon_sym_RBRACE, - STATE(95), 1, + STATE(87), 1, sym__line_insensitive_statement, - STATE(188), 1, + STATE(190), 1, sym_doc_comment, - STATE(268), 1, + STATE(270), 1, aux_sym_qualifier_list_repeat1, - STATE(272), 1, + STATE(277), 1, sym_qualifier, - STATE(330), 1, + STATE(332), 1, sym_qualifier_list, ACTIONS(13), 2, anon_sym_static, @@ -11982,7 +12137,7 @@ static const uint16_t ts_small_parse_table[] = { sym_block, sym_function_declaration, sym_class_declaration, - [10143] = 15, + [10325] = 15, ACTIONS(19), 1, anon_sym_fn, ACTIONS(23), 1, @@ -11991,23 +12146,23 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(531), 1, + ACTIONS(537), 1, anon_sym_SEMI, - ACTIONS(533), 1, + ACTIONS(539), 1, anon_sym_LF, - ACTIONS(535), 1, + ACTIONS(541), 1, anon_sym_LBRACE, - ACTIONS(539), 1, + ACTIONS(545), 1, anon_sym_RBRACE, - STATE(95), 1, + STATE(87), 1, sym__line_insensitive_statement, - STATE(189), 1, + STATE(191), 1, sym_doc_comment, - STATE(268), 1, + STATE(270), 1, aux_sym_qualifier_list_repeat1, - STATE(272), 1, + STATE(277), 1, sym_qualifier, - STATE(330), 1, + STATE(332), 1, sym_qualifier_list, ACTIONS(13), 2, anon_sym_static, @@ -12016,7 +12171,7 @@ static const uint16_t ts_small_parse_table[] = { sym_block, sym_function_declaration, sym_class_declaration, - [10192] = 15, + [10374] = 15, ACTIONS(19), 1, anon_sym_fn, ACTIONS(23), 1, @@ -12025,23 +12180,23 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(531), 1, + ACTIONS(537), 1, anon_sym_SEMI, - ACTIONS(533), 1, + ACTIONS(539), 1, anon_sym_LF, - ACTIONS(535), 1, - anon_sym_LBRACE, ACTIONS(541), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, anon_sym_RBRACE, - STATE(95), 1, + STATE(87), 1, sym__line_insensitive_statement, - STATE(190), 1, + STATE(192), 1, sym_doc_comment, - STATE(268), 1, + STATE(270), 1, aux_sym_qualifier_list_repeat1, - STATE(272), 1, + STATE(277), 1, sym_qualifier, - STATE(330), 1, + STATE(332), 1, sym_qualifier_list, ACTIONS(13), 2, anon_sym_static, @@ -12050,7 +12205,7 @@ static const uint16_t ts_small_parse_table[] = { sym_block, sym_function_declaration, sym_class_declaration, - [10241] = 14, + [10423] = 14, ACTIONS(19), 1, anon_sym_fn, ACTIONS(23), 1, @@ -12059,21 +12214,21 @@ static const uint16_t ts_small_parse_table[] = { sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(531), 1, + ACTIONS(537), 1, anon_sym_SEMI, - ACTIONS(533), 1, + ACTIONS(539), 1, anon_sym_LF, - ACTIONS(535), 1, + ACTIONS(541), 1, anon_sym_LBRACE, - STATE(95), 1, + STATE(87), 1, sym__line_insensitive_statement, - STATE(191), 1, + STATE(193), 1, sym_doc_comment, - STATE(268), 1, + STATE(270), 1, aux_sym_qualifier_list_repeat1, - STATE(272), 1, + STATE(277), 1, sym_qualifier, - STATE(330), 1, + STATE(332), 1, sym_qualifier_list, ACTIONS(13), 2, anon_sym_static, @@ -12082,53 +12237,53 @@ static const uint16_t ts_small_parse_table[] = { sym_block, sym_function_declaration, sym_class_declaration, - [10287] = 11, + [10469] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(549), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(551), 1, anon_sym_map, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, - STATE(192), 1, + STATE(194), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, - STATE(274), 1, + STATE(243), 1, sym_type_name, - STATE(310), 1, + STATE(251), 1, + sym_identifier, + STATE(261), 1, sym_type, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10325] = 11, + [10507] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(547), 1, - anon_sym_vec, ACTIONS(549), 1, + anon_sym_vec, + ACTIONS(551), 1, anon_sym_map, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(193), 1, + STATE(195), 1, sym_doc_comment, - STATE(244), 1, - sym_identifier, - STATE(246), 1, + STATE(243), 1, sym_type_name, - STATE(254), 1, + STATE(251), 1, + sym_identifier, + STATE(262), 1, sym_type, ACTIONS(37), 5, anon_sym_any, @@ -12136,26 +12291,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [10363] = 11, + [10545] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(194), 1, + STATE(196), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(312), 1, + STATE(275), 1, + sym_identifier, + STATE(335), 1, sym_type, ACTIONS(165), 5, anon_sym_any, @@ -12163,188 +12318,134 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [10401] = 11, + [10583] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(549), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(551), 1, anon_sym_map, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, - STATE(195), 1, + STATE(197), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, - STATE(274), 1, + STATE(243), 1, sym_type_name, - STATE(334), 1, - sym_type, - ACTIONS(165), 5, - anon_sym_any, - anon_sym_int, - anon_sym_str, - anon_sym_bool, - anon_sym_void, - [10439] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(543), 1, - anon_sym_vec, - ACTIONS(545), 1, - anon_sym_map, - ACTIONS(553), 1, - aux_sym_identifier_token1, - STATE(196), 1, - sym_doc_comment, - STATE(273), 1, + STATE(251), 1, sym_identifier, - STATE(274), 1, - sym_type_name, - STATE(279), 1, - sym_primitive_type, - STATE(322), 1, + STATE(258), 1, sym_type, - ACTIONS(551), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10477] = 11, + [10621] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(197), 1, + STATE(198), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(316), 1, - sym_type, - ACTIONS(165), 5, - anon_sym_any, - anon_sym_int, - anon_sym_str, - anon_sym_bool, - anon_sym_void, - [10515] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(39), 1, - aux_sym_identifier_token1, - ACTIONS(547), 1, - anon_sym_vec, - ACTIONS(549), 1, - anon_sym_map, - STATE(107), 1, - sym_primitive_type, - STATE(198), 1, - sym_doc_comment, - STATE(244), 1, + STATE(275), 1, sym_identifier, - STATE(246), 1, - sym_type_name, - STATE(260), 1, + STATE(313), 1, sym_type, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10553] = 11, + [10659] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - ACTIONS(553), 1, + ACTIONS(559), 1, aux_sym_identifier_token1, STATE(199), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(279), 1, + STATE(275), 1, + sym_identifier, + STATE(280), 1, sym_primitive_type, - STATE(289), 1, + STATE(319), 1, sym_type, - ACTIONS(551), 5, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10591] = 11, + [10697] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - ACTIONS(553), 1, + ACTIONS(559), 1, aux_sym_identifier_token1, STATE(200), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(279), 1, + STATE(275), 1, + sym_identifier, + STATE(280), 1, sym_primitive_type, - STATE(321), 1, + STATE(329), 1, sym_type, - ACTIONS(551), 5, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10629] = 11, + [10735] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(547), 1, - anon_sym_vec, ACTIONS(549), 1, + anon_sym_vec, + ACTIONS(551), 1, anon_sym_map, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, STATE(201), 1, sym_doc_comment, - STATE(244), 1, - sym_identifier, - STATE(246), 1, + STATE(243), 1, sym_type_name, - STATE(256), 1, + STATE(251), 1, + sym_identifier, + STATE(264), 1, sym_type, ACTIONS(37), 5, anon_sym_any, @@ -12352,26 +12453,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [10667] = 11, + [10773] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(547), 1, - anon_sym_vec, ACTIONS(549), 1, + anon_sym_vec, + ACTIONS(551), 1, anon_sym_map, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, STATE(202), 1, sym_doc_comment, - STATE(244), 1, - sym_identifier, - STATE(246), 1, + STATE(243), 1, sym_type_name, - STATE(258), 1, + STATE(251), 1, + sym_identifier, + STATE(256), 1, sym_type, ACTIONS(37), 5, anon_sym_any, @@ -12379,26 +12480,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [10705] = 11, + [10811] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(547), 1, - anon_sym_vec, ACTIONS(549), 1, + anon_sym_vec, + ACTIONS(551), 1, anon_sym_map, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, STATE(203), 1, sym_doc_comment, - STATE(244), 1, - sym_identifier, - STATE(246), 1, + STATE(243), 1, sym_type_name, - STATE(248), 1, + STATE(251), 1, + sym_identifier, + STATE(255), 1, sym_type, ACTIONS(37), 5, anon_sym_any, @@ -12406,26 +12507,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [10743] = 11, + [10849] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, STATE(204), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(289), 1, + STATE(275), 1, + sym_identifier, + STATE(317), 1, sym_type, ACTIONS(165), 5, anon_sym_any, @@ -12433,26 +12534,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [10781] = 11, + [10887] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, STATE(205), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(315), 1, + STATE(275), 1, + sym_identifier, + STATE(311), 1, sym_type, ACTIONS(165), 5, anon_sym_any, @@ -12460,161 +12561,161 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [10819] = 11, + [10925] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(547), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(549), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, STATE(206), 1, sym_doc_comment, - STATE(244), 1, - sym_identifier, - STATE(246), 1, + STATE(274), 1, sym_type_name, - STATE(252), 1, + STATE(275), 1, + sym_identifier, + STATE(330), 1, sym_type, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10857] = 11, + [10963] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(543), 1, + ACTIONS(167), 1, + aux_sym_identifier_token1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - ACTIONS(553), 1, - aux_sym_identifier_token1, + STATE(148), 1, + sym_primitive_type, STATE(207), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(279), 1, - sym_primitive_type, - STATE(320), 1, + STATE(275), 1, + sym_identifier, + STATE(312), 1, sym_type, - ACTIONS(551), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10895] = 11, + [11001] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, - aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(146), 1, - sym_primitive_type, + ACTIONS(559), 1, + aux_sym_identifier_token1, STATE(208), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(314), 1, + STATE(275), 1, + sym_identifier, + STATE(280), 1, + sym_primitive_type, + STATE(322), 1, sym_type, - ACTIONS(165), 5, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10933] = 11, + [11039] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - ACTIONS(553), 1, + ACTIONS(559), 1, aux_sym_identifier_token1, STATE(209), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(279), 1, + STATE(275), 1, + sym_identifier, + STATE(280), 1, sym_primitive_type, - STATE(323), 1, + STATE(309), 1, sym_type, - ACTIONS(551), 5, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [10971] = 11, + [11077] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(547), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(549), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, STATE(210), 1, sym_doc_comment, - STATE(244), 1, - sym_identifier, - STATE(246), 1, + STATE(274), 1, sym_type_name, - STATE(265), 1, + STATE(275), 1, + sym_identifier, + STATE(316), 1, sym_type, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11009] = 11, + [11115] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, STATE(211), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, - STATE(313), 1, + STATE(275), 1, + sym_identifier, + STATE(309), 1, sym_type, ACTIONS(165), 5, anon_sym_any, @@ -12622,173 +12723,179 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [11047] = 11, + [11153] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, - aux_sym_identifier_token1, - ACTIONS(543), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(545), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(146), 1, - sym_primitive_type, + ACTIONS(559), 1, + aux_sym_identifier_token1, STATE(212), 1, sym_doc_comment, - STATE(273), 1, - sym_identifier, STATE(274), 1, sym_type_name, + STATE(275), 1, + sym_identifier, + STATE(280), 1, + sym_primitive_type, STATE(333), 1, sym_type, - ACTIONS(165), 5, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11085] = 11, + [11191] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(547), 1, + ACTIONS(553), 1, anon_sym_vec, - ACTIONS(549), 1, + ACTIONS(555), 1, anon_sym_map, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, STATE(213), 1, sym_doc_comment, - STATE(240), 1, - sym_type, - STATE(244), 1, - sym_identifier, - STATE(246), 1, + STATE(274), 1, sym_type_name, - ACTIONS(37), 5, + STATE(275), 1, + sym_identifier, + STATE(315), 1, + sym_type, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11123] = 10, + [11229] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(555), 1, - anon_sym_RPAREN, - STATE(146), 1, + ACTIONS(549), 1, + anon_sym_vec, + ACTIONS(551), 1, + anon_sym_map, + STATE(105), 1, sym_primitive_type, STATE(214), 1, sym_doc_comment, - STATE(284), 1, - sym_param, - STATE(298), 1, + STATE(243), 1, + sym_type_name, + STATE(246), 1, + sym_type, + STATE(251), 1, sym_identifier, - STATE(326), 1, - sym_param_list, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11158] = 10, + [11267] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(553), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(557), 1, - anon_sym_PIPE, + ACTIONS(549), 1, + anon_sym_vec, + ACTIONS(551), 1, + anon_sym_map, + STATE(105), 1, + sym_primitive_type, STATE(215), 1, sym_doc_comment, - STATE(279), 1, - sym_primitive_type, - STATE(300), 1, - sym_param, - STATE(306), 1, + STATE(243), 1, + sym_type_name, + STATE(245), 1, + sym_type, + STATE(251), 1, sym_identifier, - STATE(319), 1, - sym_param_list, - ACTIONS(551), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11193] = 8, + [11305] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, + ACTIONS(559), 1, aux_sym_identifier_token1, - STATE(146), 1, - sym_primitive_type, + ACTIONS(561), 1, + anon_sym_PIPE, STATE(216), 1, sym_doc_comment, - ACTIONS(559), 2, - anon_sym_PLUS_PLUS, - anon_sym_EQ_EQ_EQ, - STATE(281), 2, - sym_overloadable_operator, + STATE(280), 1, + sym_primitive_type, + STATE(304), 1, sym_identifier, - ACTIONS(165), 5, + STATE(308), 1, + sym_param, + STATE(320), 1, + sym_param_list, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11224] = 10, + [11340] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(561), 1, - anon_sym_RPAREN, - STATE(146), 1, + ACTIONS(563), 1, + anon_sym_DOT, + STATE(105), 1, sym_primitive_type, STATE(217), 1, sym_doc_comment, - STATE(284), 1, - sym_param, - STATE(298), 1, + STATE(242), 1, + sym_import_relative_dot, + STATE(247), 1, sym_identifier, - STATE(317), 1, - sym_param_list, - ACTIONS(165), 5, + STATE(254), 1, + sym_import_path, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11259] = 8, + [11375] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, STATE(218), 1, sym_doc_comment, - ACTIONS(563), 2, + ACTIONS(565), 2, anon_sym_PLUS_PLUS, anon_sym_EQ_EQ_EQ, - STATE(226), 2, + STATE(235), 2, sym_overloadable_operator, sym_identifier, ACTIONS(37), 5, @@ -12797,145 +12904,145 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [11290] = 10, + [11406] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(553), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(565), 1, - anon_sym_PIPE, + ACTIONS(567), 1, + anon_sym_RPAREN, + STATE(148), 1, + sym_primitive_type, STATE(219), 1, sym_doc_comment, - STATE(279), 1, - sym_primitive_type, - STATE(300), 1, - sym_param, - STATE(306), 1, + STATE(293), 1, sym_identifier, - STATE(328), 1, + STATE(294), 1, + sym_param, + STATE(336), 1, sym_param_list, - ACTIONS(551), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11325] = 10, + [11441] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(567), 1, - anon_sym_DOT, - STATE(107), 1, + ACTIONS(569), 1, + anon_sym_RPAREN, + STATE(148), 1, sym_primitive_type, STATE(220), 1, sym_doc_comment, - STATE(249), 1, + STATE(293), 1, sym_identifier, - STATE(250), 1, - sym_import_relative_dot, - STATE(253), 1, - sym_import_path, - ACTIONS(37), 5, + STATE(294), 1, + sym_param, + STATE(321), 1, + sym_param_list, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11360] = 8, + [11476] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, STATE(221), 1, sym_doc_comment, - ACTIONS(563), 2, + ACTIONS(571), 2, anon_sym_PLUS_PLUS, anon_sym_EQ_EQ_EQ, - STATE(229), 2, + STATE(283), 2, sym_overloadable_operator, sym_identifier, - ACTIONS(37), 5, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11391] = 8, + [11507] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - STATE(146), 1, + ACTIONS(573), 1, + anon_sym_RPAREN, + STATE(148), 1, sym_primitive_type, STATE(222), 1, sym_doc_comment, - ACTIONS(559), 2, - anon_sym_PLUS_PLUS, - anon_sym_EQ_EQ_EQ, - STATE(278), 2, - sym_overloadable_operator, + STATE(293), 1, sym_identifier, + STATE(294), 1, + sym_param, + STATE(324), 1, + sym_param_list, ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11422] = 10, + [11542] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(569), 1, - anon_sym_RPAREN, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, STATE(223), 1, sym_doc_comment, - STATE(284), 1, - sym_param, - STATE(298), 1, + ACTIONS(571), 2, + anon_sym_PLUS_PLUS, + anon_sym_EQ_EQ_EQ, + STATE(281), 2, + sym_overloadable_operator, sym_identifier, - STATE(332), 1, - sym_param_list, ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11457] = 10, + [11573] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(571), 1, + ACTIONS(575), 1, anon_sym_RPAREN, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, STATE(224), 1, sym_doc_comment, - STATE(284), 1, - sym_param, - STATE(298), 1, + STATE(293), 1, sym_identifier, - STATE(318), 1, + STATE(294), 1, + sym_param, + STATE(326), 1, sym_param_list, ACTIONS(165), 5, anon_sym_any, @@ -12943,197 +13050,93 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [11492] = 10, + [11608] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, + ACTIONS(39), 1, aux_sym_identifier_token1, - ACTIONS(573), 1, - anon_sym_RPAREN, - STATE(146), 1, + STATE(105), 1, sym_primitive_type, STATE(225), 1, sym_doc_comment, - STATE(284), 1, - sym_param, - STATE(298), 1, + ACTIONS(565), 2, + anon_sym_PLUS_PLUS, + anon_sym_EQ_EQ_EQ, + STATE(236), 2, + sym_overloadable_operator, sym_identifier, - STATE(325), 1, - sym_param_list, - ACTIONS(165), 5, + ACTIONS(37), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11527] = 7, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(577), 1, - anon_sym_LF, - ACTIONS(579), 1, - anon_sym_LPAREN, - ACTIONS(581), 1, - anon_sym_DASH_GT, - STATE(226), 1, - sym_doc_comment, - ACTIONS(575), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [11555] = 6, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(585), 1, - anon_sym_LF, - ACTIONS(587), 1, - anon_sym_LT, - STATE(227), 1, - sym_doc_comment, - ACTIONS(583), 8, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - anon_sym_EQ, - [11581] = 9, + [11639] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(553), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(589), 1, - anon_sym_PIPE, - STATE(228), 1, - sym_doc_comment, - STATE(279), 1, + ACTIONS(577), 1, + anon_sym_RPAREN, + STATE(148), 1, sym_primitive_type, - STATE(283), 1, - sym_param, - STATE(306), 1, + STATE(226), 1, + sym_doc_comment, + STATE(293), 1, sym_identifier, - ACTIONS(551), 5, + STATE(294), 1, + sym_param, + STATE(325), 1, + sym_param_list, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11613] = 7, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(593), 1, - anon_sym_LF, - ACTIONS(595), 1, - anon_sym_LPAREN, - ACTIONS(597), 1, - anon_sym_DASH_GT, - STATE(229), 1, - sym_doc_comment, - ACTIONS(591), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [11641] = 7, - ACTIONS(135), 1, - sym_comment, - ACTIONS(137), 1, - anon_sym_POUND_POUND, - ACTIONS(601), 1, - anon_sym_LF, - ACTIONS(603), 1, - anon_sym_COLON, - ACTIONS(605), 1, - anon_sym_EQ, - STATE(230), 1, - sym_doc_comment, - ACTIONS(599), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [11669] = 9, + [11674] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(553), 1, + ACTIONS(559), 1, aux_sym_identifier_token1, - ACTIONS(607), 1, + ACTIONS(579), 1, anon_sym_PIPE, - STATE(231), 1, + STATE(227), 1, sym_doc_comment, - STATE(279), 1, + STATE(280), 1, sym_primitive_type, - STATE(283), 1, - sym_param, - STATE(306), 1, + STATE(304), 1, sym_identifier, - ACTIONS(551), 5, - anon_sym_any, - anon_sym_int, - anon_sym_str, - anon_sym_bool, - anon_sym_void, - [11701] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(167), 1, - aux_sym_identifier_token1, - ACTIONS(607), 1, - anon_sym_RPAREN, - STATE(146), 1, - sym_primitive_type, - STATE(232), 1, - sym_doc_comment, - STATE(283), 1, + STATE(308), 1, sym_param, - STATE(298), 1, - sym_identifier, - ACTIONS(165), 5, + STATE(323), 1, + sym_param_list, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11733] = 7, + [11709] = 7, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(611), 1, + ACTIONS(583), 1, anon_sym_LF, - ACTIONS(613), 1, + ACTIONS(585), 1, anon_sym_COLON, - ACTIONS(615), 1, + ACTIONS(587), 1, anon_sym_EQ, - STATE(233), 1, + STATE(228), 1, sym_doc_comment, - ACTIONS(609), 7, + ACTIONS(581), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13141,119 +13144,151 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [11761] = 5, + [11737] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(619), 1, + ACTIONS(591), 1, anon_sym_LF, - STATE(234), 1, + ACTIONS(593), 1, + anon_sym_LT, + STATE(229), 1, sym_doc_comment, - ACTIONS(617), 9, + ACTIONS(589), 8, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_static, anon_sym_pure, - anon_sym_LPAREN, - anon_sym_DASH_GT, anon_sym_fn, anon_sym_class, - [11785] = 6, + anon_sym_EQ, + [11763] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(585), 1, + ACTIONS(597), 1, anon_sym_LF, - ACTIONS(621), 1, - anon_sym_LT, - STATE(235), 1, + STATE(230), 1, sym_doc_comment, - ACTIONS(583), 8, + ACTIONS(595), 9, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_static, anon_sym_pure, + anon_sym_LPAREN, + anon_sym_DASH_GT, anon_sym_fn, anon_sym_class, - anon_sym_EQ, - [11811] = 9, + [11787] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - ACTIONS(589), 1, + ACTIONS(599), 1, anon_sym_RPAREN, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(236), 1, + STATE(231), 1, sym_doc_comment, - STATE(283), 1, + STATE(293), 1, + sym_identifier, + STATE(301), 1, sym_param, - STATE(298), 1, + ACTIONS(165), 5, + anon_sym_any, + anon_sym_int, + anon_sym_str, + anon_sym_bool, + anon_sym_void, + [11819] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + ACTIONS(167), 1, + aux_sym_identifier_token1, + ACTIONS(601), 1, + anon_sym_RPAREN, + STATE(148), 1, + sym_primitive_type, + STATE(232), 1, + sym_doc_comment, + STATE(293), 1, sym_identifier, + STATE(301), 1, + sym_param, ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11843] = 5, - ACTIONS(135), 1, + [11851] = 9, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(625), 1, - anon_sym_LF, - STATE(237), 1, + ACTIONS(559), 1, + aux_sym_identifier_token1, + ACTIONS(601), 1, + anon_sym_PIPE, + STATE(233), 1, sym_doc_comment, - ACTIONS(623), 8, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - anon_sym_EQ, - [11866] = 8, + STATE(280), 1, + sym_primitive_type, + STATE(301), 1, + sym_param, + STATE(304), 1, + sym_identifier, + ACTIONS(557), 5, + anon_sym_any, + anon_sym_int, + anon_sym_str, + anon_sym_bool, + anon_sym_void, + [11883] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(553), 1, + ACTIONS(559), 1, aux_sym_identifier_token1, - STATE(238), 1, + ACTIONS(599), 1, + anon_sym_PIPE, + STATE(234), 1, sym_doc_comment, - STATE(279), 1, + STATE(280), 1, sym_primitive_type, - STATE(283), 1, + STATE(301), 1, sym_param, - STATE(306), 1, + STATE(304), 1, sym_identifier, - ACTIONS(551), 5, + ACTIONS(557), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [11895] = 6, + [11915] = 7, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(629), 1, + ACTIONS(605), 1, anon_sym_LF, - ACTIONS(631), 1, + ACTIONS(607), 1, + anon_sym_LPAREN, + ACTIONS(609), 1, anon_sym_DASH_GT, - STATE(239), 1, + STATE(235), 1, sym_doc_comment, - ACTIONS(627), 7, + ACTIONS(603), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13261,18 +13296,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [11920] = 6, + [11943] = 7, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(635), 1, + ACTIONS(613), 1, anon_sym_LF, - ACTIONS(637), 1, - anon_sym_EQ, - STATE(240), 1, + ACTIONS(615), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_DASH_GT, + STATE(236), 1, sym_doc_comment, - ACTIONS(633), 7, + ACTIONS(611), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13280,18 +13317,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [11945] = 6, + [11971] = 7, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(641), 1, + ACTIONS(621), 1, anon_sym_LF, - ACTIONS(643), 1, - anon_sym_DASH_GT, - STATE(241), 1, + ACTIONS(623), 1, + anon_sym_COLON, + ACTIONS(625), 1, + anon_sym_EQ, + STATE(237), 1, sym_doc_comment, - ACTIONS(639), 7, + ACTIONS(619), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13299,16 +13338,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [11970] = 5, + [11999] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(647), 1, + ACTIONS(591), 1, anon_sym_LF, - STATE(242), 1, + ACTIONS(627), 1, + anon_sym_LT, + STATE(238), 1, sym_doc_comment, - ACTIONS(645), 8, + ACTIONS(589), 8, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13317,37 +13358,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_fn, anon_sym_class, anon_sym_EQ, - [11993] = 8, + [12025] = 6, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(631), 1, + anon_sym_LF, + ACTIONS(633), 1, + anon_sym_DASH_GT, + STATE(239), 1, + sym_doc_comment, + ACTIONS(629), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [12050] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(243), 1, + STATE(240), 1, sym_doc_comment, - STATE(283), 1, - sym_param, - STATE(298), 1, + STATE(293), 1, sym_identifier, + STATE(301), 1, + sym_param, ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [12022] = 5, + [12079] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(585), 1, + ACTIONS(637), 1, anon_sym_LF, - STATE(244), 1, + ACTIONS(639), 1, + anon_sym_DASH_GT, + STATE(241), 1, sym_doc_comment, - ACTIONS(583), 8, + ACTIONS(635), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13355,21 +13417,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - anon_sym_EQ, - [12045] = 8, + [12104] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(245), 1, + STATE(242), 1, sym_doc_comment, - STATE(249), 1, + STATE(247), 1, sym_identifier, - STATE(262), 1, + STATE(263), 1, sym_import_path, ACTIONS(37), 5, anon_sym_any, @@ -13377,16 +13438,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [12074] = 5, + [12133] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(651), 1, + ACTIONS(643), 1, anon_sym_LF, - STATE(246), 1, + STATE(243), 1, sym_doc_comment, - ACTIONS(649), 8, + ACTIONS(641), 8, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13395,18 +13456,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_fn, anon_sym_class, anon_sym_EQ, - [12097] = 6, + [12156] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(655), 1, + ACTIONS(647), 1, anon_sym_LF, - ACTIONS(657), 1, + ACTIONS(649), 1, anon_sym_DASH_GT, - STATE(247), 1, + STATE(244), 1, sym_doc_comment, - ACTIONS(653), 7, + ACTIONS(645), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13414,18 +13475,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12122] = 6, + [12181] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(661), 1, + ACTIONS(653), 1, anon_sym_LF, - ACTIONS(663), 1, + ACTIONS(655), 1, anon_sym_EQ, - STATE(248), 1, + STATE(245), 1, sym_doc_comment, - ACTIONS(659), 7, + ACTIONS(651), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13433,18 +13494,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12147] = 6, + [12206] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(667), 1, + ACTIONS(659), 1, + anon_sym_LF, + ACTIONS(661), 1, + anon_sym_EQ, + STATE(246), 1, + sym_doc_comment, + ACTIONS(657), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [12231] = 6, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(665), 1, anon_sym_LF, - ACTIONS(669), 1, + ACTIONS(667), 1, anon_sym_DOT, - STATE(249), 1, + STATE(247), 1, sym_doc_comment, - ACTIONS(665), 7, + ACTIONS(663), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13452,20 +13532,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12172] = 8, + [12256] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(249), 1, + STATE(247), 1, sym_identifier, - STATE(250), 1, + STATE(248), 1, sym_doc_comment, - STATE(263), 1, + STATE(268), 1, sym_import_path, ACTIONS(37), 5, anon_sym_any, @@ -13473,18 +13553,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [12201] = 6, + [12285] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(673), 1, + ACTIONS(671), 1, + anon_sym_LF, + STATE(249), 1, + sym_doc_comment, + ACTIONS(669), 8, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + anon_sym_EQ, + [12308] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + ACTIONS(559), 1, + aux_sym_identifier_token1, + STATE(250), 1, + sym_doc_comment, + STATE(280), 1, + sym_primitive_type, + STATE(301), 1, + sym_param, + STATE(304), 1, + sym_identifier, + ACTIONS(557), 5, + anon_sym_any, + anon_sym_int, + anon_sym_str, + anon_sym_bool, + anon_sym_void, + [12337] = 5, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(591), 1, anon_sym_LF, - ACTIONS(675), 1, - anon_sym_DASH_GT, STATE(251), 1, sym_doc_comment, - ACTIONS(671), 7, + ACTIONS(589), 8, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13492,16 +13609,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12226] = 5, + anon_sym_EQ, + [12360] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(679), 1, + ACTIONS(675), 1, anon_sym_LF, STATE(252), 1, sym_doc_comment, - ACTIONS(677), 7, + ACTIONS(673), 8, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13509,16 +13627,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12248] = 5, + anon_sym_EQ, + [12383] = 6, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(683), 1, + ACTIONS(679), 1, anon_sym_LF, + ACTIONS(681), 1, + anon_sym_DASH_GT, STATE(253), 1, sym_doc_comment, - ACTIONS(681), 7, + ACTIONS(677), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13526,16 +13647,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12270] = 5, + [12408] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(687), 1, + ACTIONS(685), 1, anon_sym_LF, STATE(254), 1, sym_doc_comment, - ACTIONS(685), 7, + ACTIONS(683), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13543,35 +13664,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12292] = 7, - ACTIONS(3), 1, + [12430] = 5, + ACTIONS(135), 1, sym_comment, - ACTIONS(5), 1, + ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(167), 1, - aux_sym_identifier_token1, - STATE(146), 1, - sym_primitive_type, - STATE(162), 1, - sym_identifier, + ACTIONS(689), 1, + anon_sym_LF, STATE(255), 1, sym_doc_comment, - ACTIONS(165), 5, - anon_sym_any, - anon_sym_int, - anon_sym_str, - anon_sym_bool, - anon_sym_void, - [12318] = 5, + ACTIONS(687), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [12452] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(691), 1, + ACTIONS(693), 1, anon_sym_LF, STATE(256), 1, sym_doc_comment, - ACTIONS(689), 7, + ACTIONS(691), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13579,35 +13698,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12340] = 7, + [12474] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(39), 1, + ACTIONS(167), 1, aux_sym_identifier_token1, - STATE(107), 1, + STATE(148), 1, sym_primitive_type, - STATE(233), 1, - sym_identifier, STATE(257), 1, sym_doc_comment, - ACTIONS(37), 5, + STATE(305), 1, + sym_identifier, + ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [12366] = 5, + [12500] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(695), 1, + ACTIONS(697), 1, anon_sym_LF, STATE(258), 1, sym_doc_comment, - ACTIONS(693), 7, + ACTIONS(695), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13615,16 +13734,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12388] = 7, + [12522] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(109), 1, + STATE(228), 1, sym_identifier, STATE(259), 1, sym_doc_comment, @@ -13634,16 +13753,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [12414] = 5, + [12548] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(699), 1, + ACTIONS(265), 1, anon_sym_LF, STATE(260), 1, sym_doc_comment, - ACTIONS(697), 7, + ACTIONS(263), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13651,16 +13770,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12436] = 5, + [12570] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(259), 1, + ACTIONS(701), 1, anon_sym_LF, STATE(261), 1, sym_doc_comment, - ACTIONS(257), 7, + ACTIONS(699), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13668,16 +13787,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12458] = 5, + [12592] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(703), 1, + ACTIONS(705), 1, anon_sym_LF, STATE(262), 1, sym_doc_comment, - ACTIONS(701), 7, + ACTIONS(703), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13685,16 +13804,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12480] = 5, + [12614] = 5, ACTIONS(135), 1, sym_comment, ACTIONS(137), 1, anon_sym_POUND_POUND, - ACTIONS(707), 1, + ACTIONS(709), 1, anon_sym_LF, STATE(263), 1, sym_doc_comment, - ACTIONS(705), 7, + ACTIONS(707), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [12636] = 5, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(713), 1, + anon_sym_LF, + STATE(264), 1, + sym_doc_comment, + ACTIONS(711), 7, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -13702,18 +13838,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_pure, anon_sym_fn, anon_sym_class, - [12502] = 7, + [12658] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(39), 1, aux_sym_identifier_token1, - STATE(107), 1, + STATE(105), 1, sym_primitive_type, - STATE(230), 1, + STATE(111), 1, sym_identifier, - STATE(264), 1, + STATE(265), 1, sym_doc_comment, ACTIONS(37), 5, anon_sym_any, @@ -13721,842 +13857,861 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_str, anon_sym_bool, anon_sym_void, - [12528] = 5, - ACTIONS(135), 1, + [12684] = 7, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(711), 1, - anon_sym_LF, - STATE(265), 1, + ACTIONS(39), 1, + aux_sym_identifier_token1, + STATE(105), 1, + sym_primitive_type, + STATE(237), 1, + sym_identifier, + STATE(266), 1, sym_doc_comment, - ACTIONS(709), 7, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_static, - anon_sym_pure, - anon_sym_fn, - anon_sym_class, - [12550] = 7, + ACTIONS(37), 5, + anon_sym_any, + anon_sym_int, + anon_sym_str, + anon_sym_bool, + anon_sym_void, + [12710] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, ACTIONS(167), 1, aux_sym_identifier_token1, - STATE(146), 1, + STATE(148), 1, sym_primitive_type, - STATE(266), 1, - sym_doc_comment, - STATE(304), 1, + STATE(160), 1, sym_identifier, + STATE(267), 1, + sym_doc_comment, ACTIONS(165), 5, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, - [12576] = 6, + [12736] = 5, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(717), 1, + anon_sym_LF, + STATE(268), 1, + sym_doc_comment, + ACTIONS(715), 7, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_static, + anon_sym_pure, + anon_sym_fn, + anon_sym_class, + [12758] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(272), 1, + STATE(277), 1, sym_qualifier, - ACTIONS(713), 2, + ACTIONS(719), 2, anon_sym_static, anon_sym_pure, - STATE(267), 2, + STATE(269), 2, sym_doc_comment, aux_sym_qualifier_list_repeat1, - ACTIONS(716), 3, + ACTIONS(722), 3, anon_sym_proto, anon_sym_fn, anon_sym_let, - [12599] = 7, + [12781] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(267), 1, + STATE(269), 1, aux_sym_qualifier_list_repeat1, - STATE(268), 1, + STATE(270), 1, sym_doc_comment, - STATE(272), 1, + STATE(277), 1, sym_qualifier, - ACTIONS(718), 2, + ACTIONS(724), 2, anon_sym_static, anon_sym_pure, - ACTIONS(720), 3, + ACTIONS(726), 3, anon_sym_proto, anon_sym_fn, anon_sym_let, - [12624] = 4, + [12806] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(269), 1, + ACTIONS(728), 1, + anon_sym_LT, + STATE(271), 1, + sym_doc_comment, + ACTIONS(591), 5, + anon_sym_LBRACE, + anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_COMMA, + anon_sym_GT, + [12826] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + STATE(272), 1, sym_doc_comment, - ACTIONS(722), 6, + ACTIONS(730), 6, anon_sym_any, anon_sym_int, anon_sym_str, anon_sym_bool, anon_sym_void, aux_sym_identifier_token1, - [12642] = 5, + [12844] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(724), 1, + ACTIONS(732), 1, anon_sym_LT, - STATE(270), 1, + STATE(273), 1, sym_doc_comment, - ACTIONS(585), 5, + ACTIONS(591), 5, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PIPE, - anon_sym_GT, anon_sym_COMMA, - [12662] = 5, + anon_sym_GT, + [12864] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(726), 1, - anon_sym_LT, - STATE(271), 1, + STATE(274), 1, sym_doc_comment, - ACTIONS(585), 5, + ACTIONS(643), 5, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PIPE, - anon_sym_GT, anon_sym_COMMA, - [12682] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - STATE(272), 1, - sym_doc_comment, - ACTIONS(728), 5, - anon_sym_static, - anon_sym_pure, - anon_sym_proto, - anon_sym_fn, - anon_sym_let, - [12699] = 4, + anon_sym_GT, + [12881] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(273), 1, + STATE(275), 1, sym_doc_comment, - ACTIONS(585), 5, + ACTIONS(591), 5, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PIPE, - anon_sym_GT, anon_sym_COMMA, - [12716] = 4, + anon_sym_GT, + [12898] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(274), 1, + STATE(276), 1, sym_doc_comment, - ACTIONS(651), 5, - anon_sym_LBRACE, - anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_GT, - anon_sym_COMMA, - [12733] = 4, + ACTIONS(734), 5, + anon_sym_static, + anon_sym_pure, + anon_sym_proto, + anon_sym_fn, + anon_sym_let, + [12915] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(275), 1, + STATE(277), 1, sym_doc_comment, - ACTIONS(730), 5, + ACTIONS(736), 5, anon_sym_static, anon_sym_pure, anon_sym_proto, anon_sym_fn, anon_sym_let, - [12750] = 4, + [12932] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(276), 1, + STATE(278), 1, sym_doc_comment, - ACTIONS(647), 5, + ACTIONS(675), 5, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PIPE, - anon_sym_GT, anon_sym_COMMA, - [12767] = 4, + anon_sym_GT, + [12949] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(277), 1, + STATE(279), 1, sym_doc_comment, - ACTIONS(625), 5, + ACTIONS(671), 5, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PIPE, - anon_sym_GT, anon_sym_COMMA, - [12784] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, - ACTIONS(734), 1, - anon_sym_LPAREN, - ACTIONS(736), 1, - anon_sym_DASH_GT, - STATE(92), 1, - sym_block, - STATE(278), 1, - sym_doc_comment, - [12806] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - STATE(279), 1, - sym_doc_comment, - ACTIONS(371), 4, - anon_sym_PIPE, anon_sym_GT, - anon_sym_COMMA, - anon_sym_COLON, - [12822] = 4, + [12966] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(280), 1, sym_doc_comment, - ACTIONS(375), 4, + ACTIONS(365), 4, anon_sym_PIPE, - anon_sym_GT, anon_sym_COMMA, + anon_sym_GT, anon_sym_COLON, - [12838] = 7, + [12982] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, ACTIONS(738), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(740), 1, + anon_sym_LPAREN, + ACTIONS(742), 1, anon_sym_DASH_GT, - STATE(97), 1, + STATE(96), 1, sym_block, STATE(281), 1, sym_doc_comment, - [12860] = 5, + [13004] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(742), 1, + ACTIONS(744), 1, anon_sym_COMMA, - ACTIONS(477), 2, + ACTIONS(491), 2, anon_sym_RPAREN, anon_sym_RBRACK, STATE(282), 2, sym_doc_comment, aux_sym_arg_list_repeat1, - [12878] = 4, + [13022] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, + ACTIONS(738), 1, + anon_sym_LBRACE, + ACTIONS(747), 1, + anon_sym_LPAREN, + ACTIONS(749), 1, + anon_sym_DASH_GT, + STATE(109), 1, + sym_block, STATE(283), 1, sym_doc_comment, - ACTIONS(745), 3, - anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_COMMA, - [12893] = 6, + [13044] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(747), 1, - anon_sym_RPAREN, - ACTIONS(749), 1, - anon_sym_COMMA, STATE(284), 1, sym_doc_comment, - STATE(292), 1, - aux_sym_param_list_repeat1, - [12912] = 4, + ACTIONS(369), 4, + anon_sym_PIPE, + anon_sym_COMMA, + anon_sym_GT, + anon_sym_COLON, + [13060] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, + ACTIONS(215), 1, + anon_sym_RPAREN, + ACTIONS(751), 1, + anon_sym_COMMA, + STATE(282), 1, + aux_sym_arg_list_repeat1, STATE(285), 1, sym_doc_comment, - ACTIONS(619), 3, - anon_sym_LBRACE, - anon_sym_LPAREN, - anon_sym_DASH_GT, - [12927] = 6, + [13079] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(751), 1, - anon_sym_RBRACE, + ACTIONS(189), 1, + anon_sym_RBRACK, ACTIONS(753), 1, anon_sym_COMMA, + STATE(282), 1, + aux_sym_arg_list_repeat1, STATE(286), 1, sym_doc_comment, - STATE(288), 1, - aux_sym_map_repeat1, - [12946] = 5, + [13098] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(745), 1, - anon_sym_PIPE, + ACTIONS(157), 1, + anon_sym_RBRACE, ACTIONS(755), 1, anon_sym_COMMA, - STATE(287), 2, + STATE(287), 1, sym_doc_comment, - aux_sym_param_list_repeat1, - [12963] = 6, + STATE(297), 1, + aux_sym_map_repeat1, + [13117] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(157), 1, - anon_sym_RBRACE, - ACTIONS(758), 1, + ACTIONS(599), 1, + anon_sym_PIPE, + ACTIONS(757), 1, anon_sym_COMMA, STATE(288), 1, sym_doc_comment, STATE(302), 1, - aux_sym_map_repeat1, - [12982] = 4, + aux_sym_param_list_repeat1, + [13136] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - STATE(289), 1, - sym_doc_comment, - ACTIONS(760), 3, - anon_sym_RPAREN, - anon_sym_PIPE, + ACTIONS(205), 1, + anon_sym_RBRACK, + ACTIONS(759), 1, anon_sym_COMMA, - [12997] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(5), 1, - anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, - ACTIONS(762), 1, - anon_sym_DASH_GT, - STATE(79), 1, - sym_block, - STATE(290), 1, + STATE(282), 1, + aux_sym_arg_list_repeat1, + STATE(289), 1, sym_doc_comment, - [13016] = 5, + [13155] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(745), 1, + ACTIONS(761), 1, anon_sym_RPAREN, - ACTIONS(764), 1, + ACTIONS(763), 1, anon_sym_COMMA, - STATE(291), 2, + STATE(290), 2, sym_doc_comment, aux_sym_param_list_repeat1, - [13033] = 6, + [13172] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(607), 1, + ACTIONS(599), 1, anon_sym_RPAREN, - ACTIONS(767), 1, + ACTIONS(766), 1, anon_sym_COMMA, - STATE(291), 1, + STATE(290), 1, aux_sym_param_list_repeat1, + STATE(291), 1, + sym_doc_comment, + [13191] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + ACTIONS(768), 1, + anon_sym_proto, + ACTIONS(770), 1, + anon_sym_fn, + ACTIONS(772), 1, + anon_sym_let, STATE(292), 1, sym_doc_comment, - [13052] = 6, + [13210] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(607), 1, - anon_sym_PIPE, - ACTIONS(769), 1, - anon_sym_COMMA, - STATE(287), 1, - aux_sym_param_list_repeat1, + ACTIONS(776), 1, + anon_sym_COLON, STATE(293), 1, sym_doc_comment, - [13071] = 6, + ACTIONS(774), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [13227] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(219), 1, - anon_sym_RBRACK, - ACTIONS(771), 1, + ACTIONS(778), 1, + anon_sym_RPAREN, + ACTIONS(780), 1, anon_sym_COMMA, - STATE(282), 1, - aux_sym_arg_list_repeat1, + STATE(291), 1, + aux_sym_param_list_repeat1, STATE(294), 1, sym_doc_comment, - [13090] = 6, + [13246] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(773), 1, - anon_sym_proto, - ACTIONS(775), 1, - anon_sym_fn, - ACTIONS(777), 1, - anon_sym_let, + ACTIONS(738), 1, + anon_sym_LBRACE, + ACTIONS(782), 1, + anon_sym_DASH_GT, + STATE(98), 1, + sym_block, STATE(295), 1, sym_doc_comment, - [13109] = 6, + [13265] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(199), 1, - anon_sym_RPAREN, - ACTIONS(779), 1, + ACTIONS(784), 1, + anon_sym_RBRACE, + ACTIONS(786), 1, anon_sym_COMMA, - STATE(282), 1, - aux_sym_arg_list_repeat1, + STATE(287), 1, + aux_sym_map_repeat1, STATE(296), 1, sym_doc_comment, - [13128] = 6, + [13284] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(781), 1, + ACTIONS(788), 1, anon_sym_RBRACE, - ACTIONS(783), 1, + ACTIONS(790), 1, anon_sym_COMMA, - STATE(297), 1, + STATE(297), 2, sym_doc_comment, - STATE(305), 1, aux_sym_map_repeat1, - [13147] = 5, + [13301] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(787), 1, - anon_sym_COLON, + ACTIONS(738), 1, + anon_sym_LBRACE, + ACTIONS(793), 1, + anon_sym_DASH_GT, + STATE(93), 1, + sym_block, STATE(298), 1, sym_doc_comment, - ACTIONS(785), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [13164] = 6, + [13320] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(195), 1, - anon_sym_RBRACK, - ACTIONS(789), 1, + ACTIONS(795), 1, + anon_sym_RBRACE, + ACTIONS(797), 1, anon_sym_COMMA, - STATE(282), 1, - aux_sym_arg_list_repeat1, STATE(299), 1, sym_doc_comment, - [13183] = 6, + STATE(307), 1, + aux_sym_map_repeat1, + [13339] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(747), 1, - anon_sym_PIPE, - ACTIONS(791), 1, - anon_sym_COMMA, - STATE(293), 1, - aux_sym_param_list_repeat1, + ACTIONS(738), 1, + anon_sym_LBRACE, + ACTIONS(799), 1, + anon_sym_DASH_GT, + STATE(92), 1, + sym_block, STATE(300), 1, sym_doc_comment, - [13202] = 6, + [13358] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, - ACTIONS(793), 1, - anon_sym_DASH_GT, - STATE(105), 1, - sym_block, STATE(301), 1, sym_doc_comment, - [13221] = 5, + ACTIONS(761), 3, + anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_COMMA, + [13373] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(795), 1, - anon_sym_RBRACE, - ACTIONS(797), 1, + ACTIONS(761), 1, + anon_sym_PIPE, + ACTIONS(801), 1, anon_sym_COMMA, STATE(302), 2, sym_doc_comment, - aux_sym_map_repeat1, - [13238] = 6, + aux_sym_param_list_repeat1, + [13390] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, + ACTIONS(738), 1, anon_sym_LBRACE, - ACTIONS(800), 1, + ACTIONS(804), 1, anon_sym_DASH_GT, - STATE(91), 1, + STATE(85), 1, sym_block, STATE(303), 1, sym_doc_comment, - [13257] = 6, + [13409] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, - ACTIONS(802), 1, - anon_sym_LPAREN, - STATE(104), 1, - sym_block, + ACTIONS(806), 1, + anon_sym_COLON, STATE(304), 1, sym_doc_comment, - [13276] = 6, + ACTIONS(774), 2, + anon_sym_PIPE, + anon_sym_COMMA, + [13426] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(185), 1, - anon_sym_RBRACE, - ACTIONS(804), 1, - anon_sym_COMMA, - STATE(302), 1, - aux_sym_map_repeat1, + ACTIONS(738), 1, + anon_sym_LBRACE, + ACTIONS(808), 1, + anon_sym_LPAREN, + STATE(108), 1, + sym_block, STATE(305), 1, sym_doc_comment, - [13295] = 5, + [13445] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(806), 1, - anon_sym_COLON, STATE(306), 1, sym_doc_comment, - ACTIONS(785), 2, - anon_sym_PIPE, - anon_sym_COMMA, - [13312] = 6, + ACTIONS(597), 3, + anon_sym_LBRACE, + anon_sym_LPAREN, + anon_sym_DASH_GT, + [13460] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, - ACTIONS(808), 1, - anon_sym_DASH_GT, - STATE(82), 1, - sym_block, + ACTIONS(187), 1, + anon_sym_RBRACE, + ACTIONS(810), 1, + anon_sym_COMMA, + STATE(297), 1, + aux_sym_map_repeat1, STATE(307), 1, sym_doc_comment, - [13331] = 5, + [13479] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, - STATE(103), 1, - sym_block, + ACTIONS(778), 1, + anon_sym_PIPE, + ACTIONS(812), 1, + anon_sym_COMMA, + STATE(288), 1, + aux_sym_param_list_repeat1, STATE(308), 1, sym_doc_comment, - [13347] = 4, + [13498] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, STATE(309), 1, sym_doc_comment, - ACTIONS(795), 2, - anon_sym_RBRACE, + ACTIONS(814), 3, + anon_sym_RPAREN, + anon_sym_PIPE, anon_sym_COMMA, - [13361] = 5, + [13513] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, - anon_sym_LBRACE, - STATE(78), 1, - sym_block, STATE(310), 1, sym_doc_comment, - [13377] = 5, + ACTIONS(788), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [13527] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, + ACTIONS(738), 1, anon_sym_LBRACE, - STATE(102), 1, + STATE(91), 1, sym_block, STATE(311), 1, sym_doc_comment, - [13393] = 5, + [13543] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, + ACTIONS(738), 1, anon_sym_LBRACE, - STATE(84), 1, + STATE(100), 1, sym_block, STATE(312), 1, sym_doc_comment, - [13409] = 5, + [13559] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, + ACTIONS(738), 1, anon_sym_LBRACE, - STATE(106), 1, + STATE(103), 1, sym_block, STATE(313), 1, sym_doc_comment, - [13425] = 5, + [13575] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, + ACTIONS(738), 1, anon_sym_LBRACE, - STATE(99), 1, + STATE(90), 1, sym_block, STATE(314), 1, sym_doc_comment, - [13441] = 5, + [13591] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, + ACTIONS(738), 1, anon_sym_LBRACE, STATE(101), 1, sym_block, STATE(315), 1, sym_doc_comment, - [13457] = 5, + [13607] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(732), 1, + ACTIONS(738), 1, anon_sym_LBRACE, - STATE(90), 1, + STATE(81), 1, sym_block, STATE(316), 1, sym_doc_comment, - [13473] = 4, + [13623] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(810), 1, - anon_sym_RPAREN, + ACTIONS(738), 1, + anon_sym_LBRACE, + STATE(95), 1, + sym_block, STATE(317), 1, sym_doc_comment, - [13486] = 4, + [13639] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(812), 1, - anon_sym_RPAREN, + ACTIONS(738), 1, + anon_sym_LBRACE, + STATE(84), 1, + sym_block, STATE(318), 1, sym_doc_comment, - [13499] = 4, + [13655] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(814), 1, - anon_sym_PIPE, + ACTIONS(816), 1, + anon_sym_GT, STATE(319), 1, sym_doc_comment, - [13512] = 4, + [13668] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(816), 1, - anon_sym_GT, + ACTIONS(818), 1, + anon_sym_PIPE, STATE(320), 1, sym_doc_comment, - [13525] = 4, + [13681] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(818), 1, - anon_sym_GT, + ACTIONS(820), 1, + anon_sym_RPAREN, STATE(321), 1, sym_doc_comment, - [13538] = 4, + [13694] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(820), 1, + ACTIONS(822), 1, anon_sym_GT, STATE(322), 1, sym_doc_comment, - [13551] = 4, + [13707] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(822), 1, - anon_sym_GT, + ACTIONS(824), 1, + anon_sym_PIPE, STATE(323), 1, sym_doc_comment, - [13564] = 4, + [13720] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(824), 1, + ACTIONS(826), 1, anon_sym_RPAREN, STATE(324), 1, sym_doc_comment, - [13577] = 4, + [13733] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(826), 1, + ACTIONS(828), 1, anon_sym_RPAREN, STATE(325), 1, sym_doc_comment, - [13590] = 4, + [13746] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(828), 1, + ACTIONS(830), 1, anon_sym_RPAREN, STATE(326), 1, sym_doc_comment, - [13603] = 4, + [13759] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(830), 1, - ts_builtin_sym_end, + ACTIONS(832), 1, + anon_sym_RPAREN, STATE(327), 1, sym_doc_comment, - [13616] = 4, + [13772] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(832), 1, - anon_sym_PIPE, + ACTIONS(834), 1, + anon_sym_RPAREN, STATE(328), 1, sym_doc_comment, - [13629] = 4, + [13785] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(834), 1, - anon_sym_RPAREN, + ACTIONS(836), 1, + anon_sym_GT, STATE(329), 1, sym_doc_comment, - [13642] = 4, + [13798] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(775), 1, - anon_sym_fn, + ACTIONS(838), 1, + anon_sym_COMMA, STATE(330), 1, sym_doc_comment, - [13655] = 4, - ACTIONS(135), 1, + [13811] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(836), 1, - sym_doc_comment_content, + ACTIONS(840), 1, + ts_builtin_sym_end, STATE(331), 1, sym_doc_comment, - [13668] = 4, + [13824] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(838), 1, - anon_sym_RPAREN, + ACTIONS(770), 1, + anon_sym_fn, STATE(332), 1, sym_doc_comment, - [13681] = 4, + [13837] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(840), 1, - anon_sym_COMMA, + ACTIONS(842), 1, + anon_sym_GT, STATE(333), 1, sym_doc_comment, - [13694] = 4, + [13850] = 4, + ACTIONS(135), 1, + sym_comment, + ACTIONS(137), 1, + anon_sym_POUND_POUND, + ACTIONS(844), 1, + sym_doc_comment_content, + STATE(334), 1, + sym_doc_comment, + [13863] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_POUND_POUND, - ACTIONS(842), 1, + ACTIONS(846), 1, anon_sym_COMMA, - STATE(334), 1, + STATE(335), 1, sym_doc_comment, - [13707] = 1, - ACTIONS(844), 1, + [13876] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_POUND_POUND, + ACTIONS(848), 1, + anon_sym_RPAREN, + STATE(336), 1, + sym_doc_comment, + [13889] = 1, + ACTIONS(850), 1, ts_builtin_sym_end, }; @@ -14592,16 +14747,16 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(41)] = 2160, [SMALL_STATE(42)] = 2237, [SMALL_STATE(43)] = 2314, - [SMALL_STATE(44)] = 2388, - [SMALL_STATE(45)] = 2462, - [SMALL_STATE(46)] = 2536, - [SMALL_STATE(47)] = 2610, + [SMALL_STATE(44)] = 2386, + [SMALL_STATE(45)] = 2460, + [SMALL_STATE(46)] = 2534, + [SMALL_STATE(47)] = 2608, [SMALL_STATE(48)] = 2682, [SMALL_STATE(49)] = 2756, - [SMALL_STATE(50)] = 2830, - [SMALL_STATE(51)] = 2904, - [SMALL_STATE(52)] = 2978, - [SMALL_STATE(53)] = 3052, + [SMALL_STATE(50)] = 2828, + [SMALL_STATE(51)] = 2902, + [SMALL_STATE(52)] = 2976, + [SMALL_STATE(53)] = 3050, [SMALL_STATE(54)] = 3124, [SMALL_STATE(55)] = 3198, [SMALL_STATE(56)] = 3272, @@ -14617,687 +14772,692 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(66)] = 4012, [SMALL_STATE(67)] = 4086, [SMALL_STATE(68)] = 4160, - [SMALL_STATE(69)] = 4231, - [SMALL_STATE(70)] = 4300, - [SMALL_STATE(71)] = 4365, + [SMALL_STATE(69)] = 4234, + [SMALL_STATE(70)] = 4302, + [SMALL_STATE(71)] = 4362, [SMALL_STATE(72)] = 4428, - [SMALL_STATE(73)] = 4489, - [SMALL_STATE(74)] = 4560, - [SMALL_STATE(75)] = 4631, - [SMALL_STATE(76)] = 4690, - [SMALL_STATE(77)] = 4763, - [SMALL_STATE(78)] = 4830, - [SMALL_STATE(79)] = 4874, - [SMALL_STATE(80)] = 4918, - [SMALL_STATE(81)] = 4988, - [SMALL_STATE(82)] = 5058, - [SMALL_STATE(83)] = 5102, - [SMALL_STATE(84)] = 5146, - [SMALL_STATE(85)] = 5190, - [SMALL_STATE(86)] = 5234, - [SMALL_STATE(87)] = 5304, - [SMALL_STATE(88)] = 5374, - [SMALL_STATE(89)] = 5418, - [SMALL_STATE(90)] = 5462, - [SMALL_STATE(91)] = 5506, - [SMALL_STATE(92)] = 5550, - [SMALL_STATE(93)] = 5594, - [SMALL_STATE(94)] = 5664, - [SMALL_STATE(95)] = 5734, - [SMALL_STATE(96)] = 5778, - [SMALL_STATE(97)] = 5848, - [SMALL_STATE(98)] = 5892, - [SMALL_STATE(99)] = 5962, - [SMALL_STATE(100)] = 6006, - [SMALL_STATE(101)] = 6076, - [SMALL_STATE(102)] = 6120, - [SMALL_STATE(103)] = 6164, - [SMALL_STATE(104)] = 6208, - [SMALL_STATE(105)] = 6252, - [SMALL_STATE(106)] = 6296, - [SMALL_STATE(107)] = 6340, - [SMALL_STATE(108)] = 6383, - [SMALL_STATE(109)] = 6426, - [SMALL_STATE(110)] = 6468, - [SMALL_STATE(111)] = 6512, - [SMALL_STATE(112)] = 6554, - [SMALL_STATE(113)] = 6595, - [SMALL_STATE(114)] = 6660, - [SMALL_STATE(115)] = 6701, - [SMALL_STATE(116)] = 6742, - [SMALL_STATE(117)] = 6783, - [SMALL_STATE(118)] = 6824, - [SMALL_STATE(119)] = 6865, - [SMALL_STATE(120)] = 6906, - [SMALL_STATE(121)] = 6947, - [SMALL_STATE(122)] = 7016, - [SMALL_STATE(123)] = 7083, - [SMALL_STATE(124)] = 7146, - [SMALL_STATE(125)] = 7187, - [SMALL_STATE(126)] = 7228, - [SMALL_STATE(127)] = 7289, - [SMALL_STATE(128)] = 7330, - [SMALL_STATE(129)] = 7371, - [SMALL_STATE(130)] = 7412, - [SMALL_STATE(131)] = 7469, - [SMALL_STATE(132)] = 7510, - [SMALL_STATE(133)] = 7565, - [SMALL_STATE(134)] = 7634, - [SMALL_STATE(135)] = 7675, - [SMALL_STATE(136)] = 7716, - [SMALL_STATE(137)] = 7785, - [SMALL_STATE(138)] = 7826, - [SMALL_STATE(139)] = 7867, - [SMALL_STATE(140)] = 7908, - [SMALL_STATE(141)] = 7949, - [SMALL_STATE(142)] = 7990, - [SMALL_STATE(143)] = 8031, - [SMALL_STATE(144)] = 8102, - [SMALL_STATE(145)] = 8141, - [SMALL_STATE(146)] = 8208, - [SMALL_STATE(147)] = 8247, - [SMALL_STATE(148)] = 8318, - [SMALL_STATE(149)] = 8389, - [SMALL_STATE(150)] = 8455, - [SMALL_STATE(151)] = 8523, - [SMALL_STATE(152)] = 8591, - [SMALL_STATE(153)] = 8628, - [SMALL_STATE(154)] = 8693, - [SMALL_STATE(155)] = 8758, - [SMALL_STATE(156)] = 8795, - [SMALL_STATE(157)] = 8832, - [SMALL_STATE(158)] = 8869, - [SMALL_STATE(159)] = 8906, - [SMALL_STATE(160)] = 8943, - [SMALL_STATE(161)] = 8980, - [SMALL_STATE(162)] = 9017, - [SMALL_STATE(163)] = 9054, - [SMALL_STATE(164)] = 9091, - [SMALL_STATE(165)] = 9128, - [SMALL_STATE(166)] = 9165, - [SMALL_STATE(167)] = 9202, - [SMALL_STATE(168)] = 9239, - [SMALL_STATE(169)] = 9304, - [SMALL_STATE(170)] = 9341, - [SMALL_STATE(171)] = 9378, - [SMALL_STATE(172)] = 9415, - [SMALL_STATE(173)] = 9480, - [SMALL_STATE(174)] = 9545, - [SMALL_STATE(175)] = 9610, - [SMALL_STATE(176)] = 9675, - [SMALL_STATE(177)] = 9712, - [SMALL_STATE(178)] = 9749, - [SMALL_STATE(179)] = 9786, - [SMALL_STATE(180)] = 9823, - [SMALL_STATE(181)] = 9860, - [SMALL_STATE(182)] = 9897, - [SMALL_STATE(183)] = 9934, - [SMALL_STATE(184)] = 9966, - [SMALL_STATE(185)] = 9998, - [SMALL_STATE(186)] = 10030, - [SMALL_STATE(187)] = 10062, - [SMALL_STATE(188)] = 10094, - [SMALL_STATE(189)] = 10143, - [SMALL_STATE(190)] = 10192, - [SMALL_STATE(191)] = 10241, - [SMALL_STATE(192)] = 10287, - [SMALL_STATE(193)] = 10325, - [SMALL_STATE(194)] = 10363, - [SMALL_STATE(195)] = 10401, - [SMALL_STATE(196)] = 10439, - [SMALL_STATE(197)] = 10477, - [SMALL_STATE(198)] = 10515, - [SMALL_STATE(199)] = 10553, - [SMALL_STATE(200)] = 10591, - [SMALL_STATE(201)] = 10629, - [SMALL_STATE(202)] = 10667, - [SMALL_STATE(203)] = 10705, - [SMALL_STATE(204)] = 10743, - [SMALL_STATE(205)] = 10781, - [SMALL_STATE(206)] = 10819, - [SMALL_STATE(207)] = 10857, - [SMALL_STATE(208)] = 10895, - [SMALL_STATE(209)] = 10933, - [SMALL_STATE(210)] = 10971, - [SMALL_STATE(211)] = 11009, - [SMALL_STATE(212)] = 11047, - [SMALL_STATE(213)] = 11085, - [SMALL_STATE(214)] = 11123, - [SMALL_STATE(215)] = 11158, - [SMALL_STATE(216)] = 11193, - [SMALL_STATE(217)] = 11224, - [SMALL_STATE(218)] = 11259, - [SMALL_STATE(219)] = 11290, - [SMALL_STATE(220)] = 11325, - [SMALL_STATE(221)] = 11360, - [SMALL_STATE(222)] = 11391, - [SMALL_STATE(223)] = 11422, - [SMALL_STATE(224)] = 11457, - [SMALL_STATE(225)] = 11492, - [SMALL_STATE(226)] = 11527, - [SMALL_STATE(227)] = 11555, - [SMALL_STATE(228)] = 11581, - [SMALL_STATE(229)] = 11613, - [SMALL_STATE(230)] = 11641, - [SMALL_STATE(231)] = 11669, - [SMALL_STATE(232)] = 11701, - [SMALL_STATE(233)] = 11733, - [SMALL_STATE(234)] = 11761, - [SMALL_STATE(235)] = 11785, - [SMALL_STATE(236)] = 11811, - [SMALL_STATE(237)] = 11843, - [SMALL_STATE(238)] = 11866, - [SMALL_STATE(239)] = 11895, - [SMALL_STATE(240)] = 11920, - [SMALL_STATE(241)] = 11945, - [SMALL_STATE(242)] = 11970, - [SMALL_STATE(243)] = 11993, - [SMALL_STATE(244)] = 12022, - [SMALL_STATE(245)] = 12045, - [SMALL_STATE(246)] = 12074, - [SMALL_STATE(247)] = 12097, - [SMALL_STATE(248)] = 12122, - [SMALL_STATE(249)] = 12147, - [SMALL_STATE(250)] = 12172, - [SMALL_STATE(251)] = 12201, - [SMALL_STATE(252)] = 12226, - [SMALL_STATE(253)] = 12248, - [SMALL_STATE(254)] = 12270, - [SMALL_STATE(255)] = 12292, - [SMALL_STATE(256)] = 12318, - [SMALL_STATE(257)] = 12340, - [SMALL_STATE(258)] = 12366, - [SMALL_STATE(259)] = 12388, - [SMALL_STATE(260)] = 12414, - [SMALL_STATE(261)] = 12436, - [SMALL_STATE(262)] = 12458, - [SMALL_STATE(263)] = 12480, - [SMALL_STATE(264)] = 12502, - [SMALL_STATE(265)] = 12528, - [SMALL_STATE(266)] = 12550, - [SMALL_STATE(267)] = 12576, - [SMALL_STATE(268)] = 12599, - [SMALL_STATE(269)] = 12624, - [SMALL_STATE(270)] = 12642, - [SMALL_STATE(271)] = 12662, - [SMALL_STATE(272)] = 12682, - [SMALL_STATE(273)] = 12699, - [SMALL_STATE(274)] = 12716, - [SMALL_STATE(275)] = 12733, - [SMALL_STATE(276)] = 12750, - [SMALL_STATE(277)] = 12767, - [SMALL_STATE(278)] = 12784, - [SMALL_STATE(279)] = 12806, - [SMALL_STATE(280)] = 12822, - [SMALL_STATE(281)] = 12838, - [SMALL_STATE(282)] = 12860, - [SMALL_STATE(283)] = 12878, - [SMALL_STATE(284)] = 12893, - [SMALL_STATE(285)] = 12912, - [SMALL_STATE(286)] = 12927, - [SMALL_STATE(287)] = 12946, - [SMALL_STATE(288)] = 12963, - [SMALL_STATE(289)] = 12982, - [SMALL_STATE(290)] = 12997, - [SMALL_STATE(291)] = 13016, - [SMALL_STATE(292)] = 13033, - [SMALL_STATE(293)] = 13052, - [SMALL_STATE(294)] = 13071, - [SMALL_STATE(295)] = 13090, - [SMALL_STATE(296)] = 13109, - [SMALL_STATE(297)] = 13128, - [SMALL_STATE(298)] = 13147, - [SMALL_STATE(299)] = 13164, - [SMALL_STATE(300)] = 13183, - [SMALL_STATE(301)] = 13202, - [SMALL_STATE(302)] = 13221, - [SMALL_STATE(303)] = 13238, - [SMALL_STATE(304)] = 13257, - [SMALL_STATE(305)] = 13276, - [SMALL_STATE(306)] = 13295, - [SMALL_STATE(307)] = 13312, - [SMALL_STATE(308)] = 13331, - [SMALL_STATE(309)] = 13347, - [SMALL_STATE(310)] = 13361, - [SMALL_STATE(311)] = 13377, - [SMALL_STATE(312)] = 13393, - [SMALL_STATE(313)] = 13409, - [SMALL_STATE(314)] = 13425, - [SMALL_STATE(315)] = 13441, - [SMALL_STATE(316)] = 13457, - [SMALL_STATE(317)] = 13473, - [SMALL_STATE(318)] = 13486, - [SMALL_STATE(319)] = 13499, - [SMALL_STATE(320)] = 13512, - [SMALL_STATE(321)] = 13525, - [SMALL_STATE(322)] = 13538, - [SMALL_STATE(323)] = 13551, - [SMALL_STATE(324)] = 13564, - [SMALL_STATE(325)] = 13577, - [SMALL_STATE(326)] = 13590, - [SMALL_STATE(327)] = 13603, - [SMALL_STATE(328)] = 13616, - [SMALL_STATE(329)] = 13629, - [SMALL_STATE(330)] = 13642, - [SMALL_STATE(331)] = 13655, - [SMALL_STATE(332)] = 13668, - [SMALL_STATE(333)] = 13681, - [SMALL_STATE(334)] = 13694, - [SMALL_STATE(335)] = 13707, + [SMALL_STATE(73)] = 4498, + [SMALL_STATE(74)] = 4562, + [SMALL_STATE(75)] = 4634, + [SMALL_STATE(76)] = 4696, + [SMALL_STATE(77)] = 4768, + [SMALL_STATE(78)] = 4840, + [SMALL_STATE(79)] = 4913, + [SMALL_STATE(80)] = 4986, + [SMALL_STATE(81)] = 5030, + [SMALL_STATE(82)] = 5074, + [SMALL_STATE(83)] = 5144, + [SMALL_STATE(84)] = 5214, + [SMALL_STATE(85)] = 5258, + [SMALL_STATE(86)] = 5302, + [SMALL_STATE(87)] = 5372, + [SMALL_STATE(88)] = 5416, + [SMALL_STATE(89)] = 5460, + [SMALL_STATE(90)] = 5504, + [SMALL_STATE(91)] = 5548, + [SMALL_STATE(92)] = 5592, + [SMALL_STATE(93)] = 5636, + [SMALL_STATE(94)] = 5680, + [SMALL_STATE(95)] = 5750, + [SMALL_STATE(96)] = 5794, + [SMALL_STATE(97)] = 5838, + [SMALL_STATE(98)] = 5908, + [SMALL_STATE(99)] = 5952, + [SMALL_STATE(100)] = 6022, + [SMALL_STATE(101)] = 6066, + [SMALL_STATE(102)] = 6110, + [SMALL_STATE(103)] = 6180, + [SMALL_STATE(104)] = 6224, + [SMALL_STATE(105)] = 6294, + [SMALL_STATE(106)] = 6338, + [SMALL_STATE(107)] = 6382, + [SMALL_STATE(108)] = 6426, + [SMALL_STATE(109)] = 6470, + [SMALL_STATE(110)] = 6514, + [SMALL_STATE(111)] = 6584, + [SMALL_STATE(112)] = 6627, + [SMALL_STATE(113)] = 6670, + [SMALL_STATE(114)] = 6712, + [SMALL_STATE(115)] = 6754, + [SMALL_STATE(116)] = 6796, + [SMALL_STATE(117)] = 6838, + [SMALL_STATE(118)] = 6880, + [SMALL_STATE(119)] = 6922, + [SMALL_STATE(120)] = 6964, + [SMALL_STATE(121)] = 7006, + [SMALL_STATE(122)] = 7048, + [SMALL_STATE(123)] = 7090, + [SMALL_STATE(124)] = 7132, + [SMALL_STATE(125)] = 7174, + [SMALL_STATE(126)] = 7216, + [SMALL_STATE(127)] = 7258, + [SMALL_STATE(128)] = 7300, + [SMALL_STATE(129)] = 7342, + [SMALL_STATE(130)] = 7384, + [SMALL_STATE(131)] = 7428, + [SMALL_STATE(132)] = 7470, + [SMALL_STATE(133)] = 7512, + [SMALL_STATE(134)] = 7554, + [SMALL_STATE(135)] = 7596, + [SMALL_STATE(136)] = 7638, + [SMALL_STATE(137)] = 7707, + [SMALL_STATE(138)] = 7774, + [SMALL_STATE(139)] = 7843, + [SMALL_STATE(140)] = 7898, + [SMALL_STATE(141)] = 7967, + [SMALL_STATE(142)] = 8032, + [SMALL_STATE(143)] = 8089, + [SMALL_STATE(144)] = 8150, + [SMALL_STATE(145)] = 8213, + [SMALL_STATE(146)] = 8284, + [SMALL_STATE(147)] = 8355, + [SMALL_STATE(148)] = 8426, + [SMALL_STATE(149)] = 8465, + [SMALL_STATE(150)] = 8504, + [SMALL_STATE(151)] = 8571, + [SMALL_STATE(152)] = 8637, + [SMALL_STATE(153)] = 8705, + [SMALL_STATE(154)] = 8773, + [SMALL_STATE(155)] = 8838, + [SMALL_STATE(156)] = 8875, + [SMALL_STATE(157)] = 8912, + [SMALL_STATE(158)] = 8949, + [SMALL_STATE(159)] = 8986, + [SMALL_STATE(160)] = 9023, + [SMALL_STATE(161)] = 9060, + [SMALL_STATE(162)] = 9097, + [SMALL_STATE(163)] = 9134, + [SMALL_STATE(164)] = 9199, + [SMALL_STATE(165)] = 9236, + [SMALL_STATE(166)] = 9273, + [SMALL_STATE(167)] = 9310, + [SMALL_STATE(168)] = 9347, + [SMALL_STATE(169)] = 9384, + [SMALL_STATE(170)] = 9449, + [SMALL_STATE(171)] = 9514, + [SMALL_STATE(172)] = 9579, + [SMALL_STATE(173)] = 9644, + [SMALL_STATE(174)] = 9681, + [SMALL_STATE(175)] = 9718, + [SMALL_STATE(176)] = 9755, + [SMALL_STATE(177)] = 9792, + [SMALL_STATE(178)] = 9857, + [SMALL_STATE(179)] = 9894, + [SMALL_STATE(180)] = 9931, + [SMALL_STATE(181)] = 9968, + [SMALL_STATE(182)] = 10005, + [SMALL_STATE(183)] = 10042, + [SMALL_STATE(184)] = 10079, + [SMALL_STATE(185)] = 10116, + [SMALL_STATE(186)] = 10148, + [SMALL_STATE(187)] = 10180, + [SMALL_STATE(188)] = 10212, + [SMALL_STATE(189)] = 10244, + [SMALL_STATE(190)] = 10276, + [SMALL_STATE(191)] = 10325, + [SMALL_STATE(192)] = 10374, + [SMALL_STATE(193)] = 10423, + [SMALL_STATE(194)] = 10469, + [SMALL_STATE(195)] = 10507, + [SMALL_STATE(196)] = 10545, + [SMALL_STATE(197)] = 10583, + [SMALL_STATE(198)] = 10621, + [SMALL_STATE(199)] = 10659, + [SMALL_STATE(200)] = 10697, + [SMALL_STATE(201)] = 10735, + [SMALL_STATE(202)] = 10773, + [SMALL_STATE(203)] = 10811, + [SMALL_STATE(204)] = 10849, + [SMALL_STATE(205)] = 10887, + [SMALL_STATE(206)] = 10925, + [SMALL_STATE(207)] = 10963, + [SMALL_STATE(208)] = 11001, + [SMALL_STATE(209)] = 11039, + [SMALL_STATE(210)] = 11077, + [SMALL_STATE(211)] = 11115, + [SMALL_STATE(212)] = 11153, + [SMALL_STATE(213)] = 11191, + [SMALL_STATE(214)] = 11229, + [SMALL_STATE(215)] = 11267, + [SMALL_STATE(216)] = 11305, + [SMALL_STATE(217)] = 11340, + [SMALL_STATE(218)] = 11375, + [SMALL_STATE(219)] = 11406, + [SMALL_STATE(220)] = 11441, + [SMALL_STATE(221)] = 11476, + [SMALL_STATE(222)] = 11507, + [SMALL_STATE(223)] = 11542, + [SMALL_STATE(224)] = 11573, + [SMALL_STATE(225)] = 11608, + [SMALL_STATE(226)] = 11639, + [SMALL_STATE(227)] = 11674, + [SMALL_STATE(228)] = 11709, + [SMALL_STATE(229)] = 11737, + [SMALL_STATE(230)] = 11763, + [SMALL_STATE(231)] = 11787, + [SMALL_STATE(232)] = 11819, + [SMALL_STATE(233)] = 11851, + [SMALL_STATE(234)] = 11883, + [SMALL_STATE(235)] = 11915, + [SMALL_STATE(236)] = 11943, + [SMALL_STATE(237)] = 11971, + [SMALL_STATE(238)] = 11999, + [SMALL_STATE(239)] = 12025, + [SMALL_STATE(240)] = 12050, + [SMALL_STATE(241)] = 12079, + [SMALL_STATE(242)] = 12104, + [SMALL_STATE(243)] = 12133, + [SMALL_STATE(244)] = 12156, + [SMALL_STATE(245)] = 12181, + [SMALL_STATE(246)] = 12206, + [SMALL_STATE(247)] = 12231, + [SMALL_STATE(248)] = 12256, + [SMALL_STATE(249)] = 12285, + [SMALL_STATE(250)] = 12308, + [SMALL_STATE(251)] = 12337, + [SMALL_STATE(252)] = 12360, + [SMALL_STATE(253)] = 12383, + [SMALL_STATE(254)] = 12408, + [SMALL_STATE(255)] = 12430, + [SMALL_STATE(256)] = 12452, + [SMALL_STATE(257)] = 12474, + [SMALL_STATE(258)] = 12500, + [SMALL_STATE(259)] = 12522, + [SMALL_STATE(260)] = 12548, + [SMALL_STATE(261)] = 12570, + [SMALL_STATE(262)] = 12592, + [SMALL_STATE(263)] = 12614, + [SMALL_STATE(264)] = 12636, + [SMALL_STATE(265)] = 12658, + [SMALL_STATE(266)] = 12684, + [SMALL_STATE(267)] = 12710, + [SMALL_STATE(268)] = 12736, + [SMALL_STATE(269)] = 12758, + [SMALL_STATE(270)] = 12781, + [SMALL_STATE(271)] = 12806, + [SMALL_STATE(272)] = 12826, + [SMALL_STATE(273)] = 12844, + [SMALL_STATE(274)] = 12864, + [SMALL_STATE(275)] = 12881, + [SMALL_STATE(276)] = 12898, + [SMALL_STATE(277)] = 12915, + [SMALL_STATE(278)] = 12932, + [SMALL_STATE(279)] = 12949, + [SMALL_STATE(280)] = 12966, + [SMALL_STATE(281)] = 12982, + [SMALL_STATE(282)] = 13004, + [SMALL_STATE(283)] = 13022, + [SMALL_STATE(284)] = 13044, + [SMALL_STATE(285)] = 13060, + [SMALL_STATE(286)] = 13079, + [SMALL_STATE(287)] = 13098, + [SMALL_STATE(288)] = 13117, + [SMALL_STATE(289)] = 13136, + [SMALL_STATE(290)] = 13155, + [SMALL_STATE(291)] = 13172, + [SMALL_STATE(292)] = 13191, + [SMALL_STATE(293)] = 13210, + [SMALL_STATE(294)] = 13227, + [SMALL_STATE(295)] = 13246, + [SMALL_STATE(296)] = 13265, + [SMALL_STATE(297)] = 13284, + [SMALL_STATE(298)] = 13301, + [SMALL_STATE(299)] = 13320, + [SMALL_STATE(300)] = 13339, + [SMALL_STATE(301)] = 13358, + [SMALL_STATE(302)] = 13373, + [SMALL_STATE(303)] = 13390, + [SMALL_STATE(304)] = 13409, + [SMALL_STATE(305)] = 13426, + [SMALL_STATE(306)] = 13445, + [SMALL_STATE(307)] = 13460, + [SMALL_STATE(308)] = 13479, + [SMALL_STATE(309)] = 13498, + [SMALL_STATE(310)] = 13513, + [SMALL_STATE(311)] = 13527, + [SMALL_STATE(312)] = 13543, + [SMALL_STATE(313)] = 13559, + [SMALL_STATE(314)] = 13575, + [SMALL_STATE(315)] = 13591, + [SMALL_STATE(316)] = 13607, + [SMALL_STATE(317)] = 13623, + [SMALL_STATE(318)] = 13639, + [SMALL_STATE(319)] = 13655, + [SMALL_STATE(320)] = 13668, + [SMALL_STATE(321)] = 13681, + [SMALL_STATE(322)] = 13694, + [SMALL_STATE(323)] = 13707, + [SMALL_STATE(324)] = 13720, + [SMALL_STATE(325)] = 13733, + [SMALL_STATE(326)] = 13746, + [SMALL_STATE(327)] = 13759, + [SMALL_STATE(328)] = 13772, + [SMALL_STATE(329)] = 13785, + [SMALL_STATE(330)] = 13798, + [SMALL_STATE(331)] = 13811, + [SMALL_STATE(332)] = 13824, + [SMALL_STATE(333)] = 13837, + [SMALL_STATE(334)] = 13850, + [SMALL_STATE(335)] = 13863, + [SMALL_STATE(336)] = 13876, + [SMALL_STATE(337)] = 13889, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(220), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(275), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276), [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(266), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(221), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(15), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(107), - [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(116), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(115), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(106), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(129), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(123), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [61] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), - [63] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(3), - [66] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(220), - [69] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(275), - [72] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(218), - [75] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(48), - [78] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(216), - [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(215), - [84] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(266), - [87] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(50), - [90] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(51), - [93] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(15), - [96] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(257), - [99] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(184), - [102] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(33), - [105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(108), - [108] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(107), - [111] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(115), - [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(116), - [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(115), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [126] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(4), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [57] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), + [59] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(3), + [62] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(217), + [65] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(276), + [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(218), + [71] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(60), + [74] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(221), + [77] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(227), + [80] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(257), + [83] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(56), + [86] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(47), + [89] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(15), + [92] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(259), + [95] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(187), + [98] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(25), + [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(106), + [104] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(105), + [107] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(123), + [110] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(129), + [113] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(123), + [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [126] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__statement_list, 2), SHIFT_REPEAT(2), [129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), [131] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 2), [133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 2), [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(331), + [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(334), [139] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), [141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return, 1), [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return, 1), [145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21), - [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), - [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(215), - [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(184), - [153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), - [155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), - [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), - [169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(156), - [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(157), - [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arg_list, 2), - [201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arg_list, 3), - [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), + [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(227), + [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(187), + [153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), + [155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), + [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), + [169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166), + [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(162), + [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arg_list, 2), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arg_list, 3), + [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, .production_id = 8), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 8), - [227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259), + [223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 17), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 17), + [227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265), [229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(17), - [231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(187), - [233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(183), - [235] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), - [237] = {.entry = {.count = 1, .reusable = false}}, SHIFT(186), - [239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), - [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(185), - [243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 17), - [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 17), - [249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, .production_id = 13), - [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, .production_id = 13), + [231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(186), + [233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(188), + [235] = {.entry = {.count = 1, .reusable = false}}, SHIFT(44), + [237] = {.entry = {.count = 1, .reusable = false}}, SHIFT(185), + [239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), + [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), + [243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, .production_id = 13), + [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, .production_id = 13), + [247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(189), + [249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, .production_id = 8), + [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 8), [253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, .production_id = 22), [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, .production_id = 22), - [257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), - [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(43), - [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 6, .production_id = 43), - [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 6, .production_id = 43), - [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 6, .production_id = 42), - [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 6, .production_id = 42), - [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assert, 2, .production_id = 6), - [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert, 2, .production_id = 6), - [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_print, 2, .production_id = 5), - [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print, 2, .production_id = 5), - [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 5, .production_id = 31), - [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 5, .production_id = 31), - [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3, .production_id = 9), - [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3, .production_id = 9), - [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, .production_id = 46), - [289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 7, .production_id = 46), - [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 5, .production_id = 35), - [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 5, .production_id = 35), - [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__line_insensitive_statement, 1), - [297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__line_insensitive_statement, 1), - [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__statement_list, 1), - [301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__statement_list, 1), - [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 9, .production_id = 53), - [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 9, .production_id = 53), - [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, .production_id = 48), - [309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 7, .production_id = 48), - [311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 4, .production_id = 26), - [313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 4, .production_id = 26), - [315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return, 2, .production_id = 7), - [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return, 2, .production_id = 7), - [319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 4, .production_id = 25), - [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 4, .production_id = 25), - [323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), - [325] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 7, .production_id = 49), - [327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 7, .production_id = 49), - [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 3, .production_id = 12), - [331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 3, .production_id = 12), - [333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3, .production_id = 18), - [335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 18), - [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 5, .production_id = 32), - [339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 5, .production_id = 32), - [341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 6, .production_id = 40), - [343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 6, .production_id = 40), - [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 8, .production_id = 50), - [347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 8, .production_id = 50), - [349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 5, .production_id = 31), - [351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 5, .production_id = 31), - [353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 6, .production_id = 39), - [355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 6, .production_id = 39), - [357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 3, .production_id = 12), - [359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 3, .production_id = 12), - [361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 6, .production_id = 39), - [363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 6, .production_id = 39), - [365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 8, .production_id = 52), - [367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 8, .production_id = 52), - [369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), - [371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), - [373] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 1), - [375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 1), - [377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_access, 3, .production_id = 15), - [379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_access, 3, .production_id = 15), - [381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [385] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), - [387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 4, .production_id = 29), - [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 4, .production_id = 29), - [391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 4, .production_id = 28), - [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 28), - [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [409] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 5), - [411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 5), - [413] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1), - [415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), - [417] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bool, 1), - [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bool, 1), - [421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 5), - [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 5), - [425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 3), - [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 3), - [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [433] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 3, .production_id = 16), - [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 3, .production_id = 16), - [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 3), - [439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 3), - [441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 5, .production_id = 37), - [443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, .production_id = 37), - [445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 4), - [447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 4), - [449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 4, .production_id = 27), - [451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 4, .production_id = 27), - [453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 11), - [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 11), - [457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 4), - [459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 4), - [461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 6, .production_id = 44), - [463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 6, .production_id = 44), - [465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 2), - [467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 2), - [469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 5, .production_id = 36), - [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, .production_id = 36), - [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arg_list_repeat1, 2), - [479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arg_list, 1), - [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_item, 3, .production_id = 19), - [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [511] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_operator, 1), - [513] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_additive_operator, 1), - [515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 1), - [517] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 1), - [519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_or_operator, 1), - [521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_or_operator, 1), - [523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_operator, 1), - [525] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_operator, 1), - [527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparative_operator, 1), - [529] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparative_operator, 1), - [531] = {.entry = {.count = 1, .reusable = false}}, SHIFT(95), - [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [535] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10), - [537] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), - [539] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), - [541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), - [543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(270), - [545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), - [547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(235), - [549] = {.entry = {.count = 1, .reusable = false}}, SHIFT(227), - [551] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280), - [553] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279), - [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), - [557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), - [575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 2, .production_id = 3), - [577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 2, .production_id = 3), - [579] = {.entry = {.count = 1, .reusable = false}}, SHIFT(224), - [581] = {.entry = {.count = 1, .reusable = false}}, SHIFT(202), - [583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1), - [585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1), - [587] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), - [589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3), - [591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 3, .production_id = 14), - [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 3, .production_id = 14), - [595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), - [597] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), - [599] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 3, .production_id = 14), - [601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 3, .production_id = 14), - [603] = {.entry = {.count = 1, .reusable = false}}, SHIFT(203), - [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), - [607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2), - [609] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 2, .production_id = 3), - [611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 2, .production_id = 3), - [613] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213), - [615] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), - [617] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_overloadable_operator, 1), - [619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_overloadable_operator, 1), - [621] = {.entry = {.count = 1, .reusable = false}}, SHIFT(196), - [623] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 4), - [625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 4), - [627] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 6, .production_id = 41), - [629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 6, .production_id = 41), - [631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(206), - [633] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 4, .production_id = 24), - [635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 4, .production_id = 24), - [637] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), - [639] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 5, .production_id = 14), - [641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 5, .production_id = 14), - [643] = {.entry = {.count = 1, .reusable = false}}, SHIFT(193), - [645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 6), - [647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 6), - [649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), - [651] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [653] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 4, .production_id = 3), - [655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 4, .production_id = 3), - [657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(198), - [659] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 5, .production_id = 34), - [661] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 5, .production_id = 34), - [663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), - [665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_path, 1, .production_id = 2), - [667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_path, 1, .production_id = 2), - [669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(245), - [671] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 5, .production_id = 30), - [673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 5, .production_id = 30), - [675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(201), - [677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 8, .production_id = 51), - [679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 8, .production_id = 51), - [681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 2, .production_id = 1), - [683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 2, .production_id = 1), - [685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 7, .production_id = 47), - [687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 7, .production_id = 47), - [689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 7, .production_id = 45), - [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 7, .production_id = 45), - [693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 4, .production_id = 21), - [695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 4, .production_id = 21), - [697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 6, .production_id = 38), - [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 6, .production_id = 38), - [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_path, 3, .production_id = 20), - [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_path, 3, .production_id = 20), - [705] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 3, .production_id = 10), - [707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 3, .production_id = 10), - [709] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 5, .production_id = 33), - [711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 5, .production_id = 33), - [713] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_qualifier_list_repeat1, 2), SHIFT_REPEAT(275), - [716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_qualifier_list_repeat1, 2), - [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualifier_list, 1), - [722] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_relative_dot, 1), - [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_qualifier_list_repeat1, 1), - [730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualifier, 1), - [732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [742] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arg_list_repeat1, 2), SHIFT_REPEAT(67), - [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), - [747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 1), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [755] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), SHIFT_REPEAT(238), - [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 3, .production_id = 23), - [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [764] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), SHIFT_REPEAT(243), - [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 1, .production_id = 4), - [787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [795] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), - [797] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(30), - [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), - [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), - [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [830] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [836] = {.entry = {.count = 1, .reusable = false}}, SHIFT(335), - [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_doc_comment, 2), + [257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assert, 2, .production_id = 6), + [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert, 2, .production_id = 6), + [261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), + [265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), + [267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), + [269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3, .production_id = 9), + [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3, .production_id = 9), + [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, .production_id = 47), + [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 7, .production_id = 47), + [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_print, 2, .production_id = 5), + [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print, 2, .production_id = 5), + [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return, 2, .production_id = 7), + [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return, 2, .production_id = 7), + [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 6, .production_id = 40), + [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 6, .production_id = 40), + [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 6, .production_id = 40), + [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 6, .production_id = 40), + [293] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 5, .production_id = 36), + [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 5, .production_id = 36), + [297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__statement_list, 2), + [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__line_insensitive_statement, 1), + [301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__line_insensitive_statement, 1), + [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__statement_list, 1), + [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__statement_list, 1), + [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 5, .production_id = 32), + [309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 5, .production_id = 32), + [311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 5, .production_id = 33), + [313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 5, .production_id = 33), + [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 5, .production_id = 32), + [317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 5, .production_id = 32), + [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 6, .production_id = 43), + [321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 6, .production_id = 43), + [323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3, .production_id = 18), + [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 18), + [327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 6, .production_id = 44), + [329] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 6, .production_id = 44), + [331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 4, .production_id = 27), + [333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 4, .production_id = 27), + [335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, .production_id = 49), + [337] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 7, .production_id = 49), + [339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 7, .production_id = 50), + [341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 7, .production_id = 50), + [343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 8, .production_id = 51), + [345] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 8, .production_id = 51), + [347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 8, .production_id = 53), + [349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 8, .production_id = 53), + [351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 4, .production_id = 26), + [353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 4, .production_id = 26), + [355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 9, .production_id = 54), + [357] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 9, .production_id = 54), + [359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assert, 4, .production_id = 24), + [361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert, 4, .production_id = 24), + [363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), + [365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), + [367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 1), + [369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 1), + [371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 3, .production_id = 12), + [373] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 3, .production_id = 12), + [375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 3, .production_id = 12), + [377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 3, .production_id = 12), + [379] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 6, .production_id = 41), + [381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 6, .production_id = 41), + [383] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_access, 3, .production_id = 15), + [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_access, 3, .production_id = 15), + [387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 4, .production_id = 30), + [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 4, .production_id = 30), + [391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 11), + [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 11), + [395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 4), + [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 4), + [399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 3), + [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 3), + [403] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 2), + [405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 2), + [407] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 6, .production_id = 45), + [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 6, .production_id = 45), + [411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 3), + [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 3), + [415] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 5, .production_id = 38), + [417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, .production_id = 38), + [419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1), + [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), + [423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 5, .production_id = 37), + [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, .production_id = 37), + [427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vec, 5), + [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec, 5), + [431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 3, .production_id = 16), + [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 3, .production_id = 16), + [435] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 5), + [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 5), + [439] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bool, 1), + [441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bool, 1), + [443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), + [445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), + [447] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), + [449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 4), + [451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 4), + [453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice, 4, .production_id = 29), + [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 29), + [457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 4, .production_id = 28), + [459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 4, .production_id = 28), + [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arg_list, 1), + [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arg_list_repeat1, 2), + [493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_item, 3, .production_id = 19), + [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_operator, 1), + [519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_operator, 1), + [521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparative_operator, 1), + [523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparative_operator, 1), + [525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 1), + [527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 1), + [529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_operator, 1), + [531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_additive_operator, 1), + [533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_or_operator, 1), + [535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_or_operator, 1), + [537] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), + [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6), + [543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(175), + [545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(114), + [547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(80), + [549] = {.entry = {.count = 1, .reusable = false}}, SHIFT(229), + [551] = {.entry = {.count = 1, .reusable = false}}, SHIFT(238), + [553] = {.entry = {.count = 1, .reusable = false}}, SHIFT(273), + [555] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), + [557] = {.entry = {.count = 1, .reusable = false}}, SHIFT(284), + [559] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280), + [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), + [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 2, .production_id = 3), + [583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 2, .production_id = 3), + [585] = {.entry = {.count = 1, .reusable = false}}, SHIFT(215), + [587] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), + [589] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1), + [591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1), + [593] = {.entry = {.count = 1, .reusable = false}}, SHIFT(200), + [595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_overloadable_operator, 1), + [597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_overloadable_operator, 1), + [599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2), + [601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3), + [603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 2, .production_id = 3), + [605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 2, .production_id = 3), + [607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(222), + [609] = {.entry = {.count = 1, .reusable = false}}, SHIFT(202), + [611] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 3, .production_id = 14), + [613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 3, .production_id = 14), + [615] = {.entry = {.count = 1, .reusable = false}}, SHIFT(226), + [617] = {.entry = {.count = 1, .reusable = false}}, SHIFT(197), + [619] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 3, .production_id = 14), + [621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 3, .production_id = 14), + [623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(214), + [625] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), + [627] = {.entry = {.count = 1, .reusable = false}}, SHIFT(206), + [629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 5, .production_id = 14), + [631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 5, .production_id = 14), + [633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), + [635] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 5, .production_id = 31), + [637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 5, .production_id = 31), + [639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(203), + [641] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), + [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), + [645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 4, .production_id = 3), + [647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 4, .production_id = 3), + [649] = {.entry = {.count = 1, .reusable = false}}, SHIFT(194), + [651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 4, .production_id = 25), + [653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 4, .production_id = 25), + [655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(46), + [657] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_decl, 5, .production_id = 35), + [659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_decl, 5, .production_id = 35), + [661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), + [663] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_path, 1, .production_id = 2), + [665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_path, 1, .production_id = 2), + [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(248), + [669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 6), + [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 6), + [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 4), + [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 4), + [677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 6, .production_id = 42), + [679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 6, .production_id = 42), + [681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(201), + [683] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 2, .production_id = 1), + [685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 2, .production_id = 1), + [687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 7, .production_id = 46), + [689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 7, .production_id = 46), + [691] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 4, .production_id = 21), + [693] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 4, .production_id = 21), + [695] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 5, .production_id = 34), + [697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 5, .production_id = 34), + [699] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 6, .production_id = 39), + [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 6, .production_id = 39), + [703] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 7, .production_id = 48), + [705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 7, .production_id = 48), + [707] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 3, .production_id = 10), + [709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 3, .production_id = 10), + [711] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_proto, 8, .production_id = 52), + [713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_proto, 8, .production_id = 52), + [715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_path, 3, .production_id = 20), + [717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_path, 3, .production_id = 20), + [719] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_qualifier_list_repeat1, 2), SHIFT_REPEAT(276), + [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_qualifier_list_repeat1, 2), + [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), + [726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualifier_list, 1), + [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [730] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_relative_dot, 1), + [732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualifier, 1), + [736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_qualifier_list_repeat1, 1), + [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [744] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arg_list_repeat1, 2), SHIFT_REPEAT(45), + [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), + [763] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), SHIFT_REPEAT(240), + [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), + [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), + [774] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 1, .production_id = 4), + [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 1), + [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), + [790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(40), + [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [801] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), SHIFT_REPEAT(250), + [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 3, .production_id = 23), + [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), + [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), + [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [840] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [844] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), + [846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_doc_comment, 2), }; #ifdef __cplusplus From ec5beae0ad7d2dc4aa5f5ea9c3787d77e62393fc Mon Sep 17 00:00:00 2001 From: Aymeric Wibo Date: Sat, 21 Dec 2024 11:08:29 +0100 Subject: [PATCH 3/4] repr: Factor out representation code from print --- flamingo/common.h | 4 ++ flamingo/grammar/print.h | 116 +----------------------------------- flamingo/repr.h | 124 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 130 insertions(+), 114 deletions(-) create mode 100644 flamingo/repr.h diff --git a/flamingo/common.h b/flamingo/common.h index 0940f20..b97fd1a 100644 --- a/flamingo/common.h +++ b/flamingo/common.h @@ -91,4 +91,8 @@ static inline int call( flamingo_arg_list_t* args ); +// Representation prototypes. + +static inline int repr(flamingo_t* flamingo, flamingo_val_t* val, char** res); + #define error(...) (flamingo_raise_error(__VA_ARGS__)) diff --git a/flamingo/grammar/print.h b/flamingo/grammar/print.h index 5a09979..3f25f83 100644 --- a/flamingo/grammar/print.h +++ b/flamingo/grammar/print.h @@ -6,121 +6,9 @@ #include "expr.h" #include "../common.h" +#include "../repr.h" #include "../val.h" -#include - -static int repr(flamingo_t* flamingo, flamingo_val_t* val, char** res, bool inner) { - char* buf; - - switch (val->kind) { - case FLAMINGO_VAL_KIND_NONE: - *res = strdup(""); - break; - case FLAMINGO_VAL_KIND_BOOL: - *res = strdup(val->boolean.boolean ? "true" : "false"); - break; - case FLAMINGO_VAL_KIND_INT: - asprintf(res, "%" PRId64, val->integer.integer); - break; - case FLAMINGO_VAL_KIND_STR: - if (inner) { - asprintf(res, "\"%.*s\"", (int) val->str.size, val->str.str); - } - - else { - asprintf(res, "%.*s", (int) val->str.size, val->str.str); - } - - break; - case FLAMINGO_VAL_KIND_VEC: - *res = strdup("["); - assert(*res != NULL); - - for (size_t i = 0; i < val->vec.count; i++) { - flamingo_val_t* const elem = val->vec.elems[i]; - char* elem_repr; - - if (repr(flamingo, elem, &elem_repr, true) < 0) { - free(res); - return -1; - } - - buf = strdup(*res); - assert(buf != NULL); - asprintf(res, "%s%s%s", buf, i == 0 ? "" : ", ", elem_repr); - assert(*res != NULL); - - free(buf); - free(elem_repr); - } - - buf = strdup(*res); - assert(buf != NULL); - asprintf(res, "%s]", buf); - free(buf); - - break; - case FLAMINGO_VAL_KIND_MAP: - *res = strdup("{"); - assert(*res != NULL); - - for (size_t i = 0; i < val->map.count; i++) { - flamingo_val_t* const k = val->map.keys[i]; - flamingo_val_t* const v = val->map.vals[i]; - - char* key_repr; - - if (repr(flamingo, k, &key_repr, true) < 0) { - free(res); - return -1; - } - - char* val_repr; - - if (repr(flamingo, v, &val_repr, true) < 0) { - free(key_repr); - free(res); - return -1; - } - - buf = strdup(*res); - assert(buf != NULL); - asprintf(res, "%s%s%s: %s", buf, i == 0 ? "" : ", ", key_repr, val_repr); - assert(*res != NULL); - free(key_repr); - free(val_repr); - free(buf); - } - - buf = strdup(*res); - assert(buf != NULL); - asprintf(res, "%s}", buf); - free(buf); - - break; - case FLAMINGO_VAL_KIND_FN: - if (val->name_size == 0) { - *res = strdup(""); - break; - } - - asprintf(res, "<%s %.*s>", val_type_str(val), (int) val->name_size, val->name); - break; - case FLAMINGO_VAL_KIND_INST:; - flamingo_val_t* const class = val->inst.class; - assert(class != NULL); - - asprintf(res, "", (int) class->name_size, class->name); - break; - default: - return error(flamingo, "can't print expression kind: %s (%d)", val_type_str(val), val->kind); - } - - assert(*res != NULL); - return 0; -} - static int parse_print(flamingo_t* flamingo, TSNode node) { assert(ts_node_child_count(node) == 2); @@ -140,7 +28,7 @@ static int parse_print(flamingo_t* flamingo, TSNode node) { // XXX Don't forget to decrement reference at the end! char* to_print = NULL; - int rv = repr(flamingo, val, &to_print, false); + int rv = repr(flamingo, val, &to_print); if (rv == 0) { assert(to_print != NULL); diff --git a/flamingo/repr.h b/flamingo/repr.h new file mode 100644 index 0000000..180fdee --- /dev/null +++ b/flamingo/repr.h @@ -0,0 +1,124 @@ +// This Source Form is subject to the terms of the AQUA Software License, +// v. 1.0. Copyright (c) 2024 Aymeric Wibo + +#pragma once + +#include "common.h" +#include "val.h" + +#include + +static int repr_inner(flamingo_t* flamingo, flamingo_val_t* val, char** res, bool inner) { + char* buf; + + switch (val->kind) { + case FLAMINGO_VAL_KIND_NONE: + *res = strdup(""); + break; + case FLAMINGO_VAL_KIND_BOOL: + *res = strdup(val->boolean.boolean ? "true" : "false"); + break; + case FLAMINGO_VAL_KIND_INT: + asprintf(res, "%" PRId64, val->integer.integer); + break; + case FLAMINGO_VAL_KIND_STR: + if (inner) { + asprintf(res, "\"%.*s\"", (int) val->str.size, val->str.str); + } + + else { + asprintf(res, "%.*s", (int) val->str.size, val->str.str); + } + + break; + case FLAMINGO_VAL_KIND_VEC: + *res = strdup("["); + assert(*res != NULL); + + for (size_t i = 0; i < val->vec.count; i++) { + flamingo_val_t* const elem = val->vec.elems[i]; + char* elem_repr; + + if (repr_inner(flamingo, elem, &elem_repr, true) < 0) { + free(res); + return -1; + } + + buf = strdup(*res); + assert(buf != NULL); + asprintf(res, "%s%s%s", buf, i == 0 ? "" : ", ", elem_repr); + assert(*res != NULL); + + free(buf); + free(elem_repr); + } + + buf = strdup(*res); + assert(buf != NULL); + asprintf(res, "%s]", buf); + free(buf); + + break; + case FLAMINGO_VAL_KIND_MAP: + *res = strdup("{"); + assert(*res != NULL); + + for (size_t i = 0; i < val->map.count; i++) { + flamingo_val_t* const k = val->map.keys[i]; + flamingo_val_t* const v = val->map.vals[i]; + + char* key_repr; + + if (repr_inner(flamingo, k, &key_repr, true) < 0) { + free(res); + return -1; + } + + char* val_repr; + + if (repr_inner(flamingo, v, &val_repr, true) < 0) { + free(key_repr); + free(res); + return -1; + } + + buf = strdup(*res); + assert(buf != NULL); + asprintf(res, "%s%s%s: %s", buf, i == 0 ? "" : ", ", key_repr, val_repr); + assert(*res != NULL); + free(key_repr); + free(val_repr); + free(buf); + } + + buf = strdup(*res); + assert(buf != NULL); + asprintf(res, "%s}", buf); + free(buf); + + break; + case FLAMINGO_VAL_KIND_FN: + if (val->name_size == 0) { + *res = strdup(""); + break; + } + + asprintf(res, "<%s %.*s>", val_type_str(val), (int) val->name_size, val->name); + break; + case FLAMINGO_VAL_KIND_INST:; + flamingo_val_t* const class = val->inst.class; + assert(class != NULL); + + asprintf(res, "", (int) class->name_size, class->name); + break; + default: + return error(flamingo, "can't print expression kind: %s (%d)", val_type_str(val), val->kind); + } + + assert(*res != NULL); + return 0; +} + +static int repr(flamingo_t* flamingo, flamingo_val_t* val, char** res) { + return repr_inner(flamingo, val, res, false); +} From f3b15101e1a6226b7efd467034ba6124e61a77c3 Mon Sep 17 00:00:00 2001 From: Aymeric Wibo Date: Sat, 21 Dec 2024 11:19:57 +0100 Subject: [PATCH 4/4] assert: Include assert message in error message if there is one --- flamingo/grammar/assert.h | 64 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 59 insertions(+), 5 deletions(-) diff --git a/flamingo/grammar/assert.h b/flamingo/grammar/assert.h index c5037ee..658b72e 100644 --- a/flamingo/grammar/assert.h +++ b/flamingo/grammar/assert.h @@ -9,7 +9,10 @@ #include "../val.h" static int parse_assert(flamingo_t* flamingo, TSNode node) { - assert(ts_node_child_count(node) == 2); + size_t const child_count = ts_node_named_child_count(node); + assert(child_count == 1 || child_count == 2); + + // Get test expression. TSNode const test_node = ts_node_child_by_field_name(node, "test", 4); char const* const type = ts_node_type(test_node); @@ -18,6 +21,21 @@ static int parse_assert(flamingo_t* flamingo, TSNode node) { return error(flamingo, "expected expression for test, got %s", type); } + // Get message. + + TSNode const msg_node = ts_node_child_by_field_name(node, "msg", 3); + bool const has_msg = !ts_node_is_null(msg_node); + + if (has_msg) { + char const* const msg_type = ts_node_type(msg_node); + + if (strcmp(msg_type, "expression") != 0) { + return error(flamingo, "expected expression for message, got %s", msg_type); + } + } + + // Evaluate the test expression. + flamingo_val_t* val = NULL; if (parse_expr(flamingo, test_node, &val, NULL) < 0) { @@ -28,16 +46,52 @@ static int parse_assert(flamingo_t* flamingo, TSNode node) { return error(flamingo, "expected boolean value for test, got %s", val_type_str(val)); } + // If the test succeeded, exit now. + + if (val->boolean.boolean) { + val_decref(val); + return 0; + } + + // Otherwise, start by getting a string for the test expression. + size_t const start = ts_node_start_byte(test_node); size_t const end = ts_node_end_byte(test_node); char const* const test_str = flamingo->src + start; size_t const test_size = end - start; - if (!val->boolean.boolean) { - return error(flamingo, "assertion test '%.*s' failed", (int) test_size, test_str); + // If we have a message, evaluate it and include it in the error message. + + if (has_msg) { + flamingo_val_t* msg_val = NULL; + + if (parse_expr(flamingo, msg_node, &msg_val, NULL) < 0) { + val_decref(val); + return error(flamingo, "assertion test '%.*s' failed, and failed to parse message expression in doing so", (int) test_size, test_str); + } + + char* msg_repr = NULL; + + if (repr(flamingo, msg_val, &msg_repr) < 0) { + val_decref(val); + val_decref(msg_val); + + return error(flamingo, "assertion test '%.*s' failed, and failed to represent message expression in doing so", (int) test_size, test_str); + } + + val_decref(val); + val_decref(msg_val); + + // Finally, actually error. + + int const rv = error(flamingo, "assertion test '%.*s' failed: %s", (int) test_size, test_str, msg_repr); + free(msg_repr); + + return rv; } - val_decref(val); - return 0; + // Otherwise, just spit out something generic. + + return error(flamingo, "assertion test '%.*s' failed", (int) test_size, test_str); }