diff --git a/grammar.js b/grammar.js index 4c25beb..10eba7c 100644 --- a/grammar.js +++ b/grammar.js @@ -31,13 +31,13 @@ module.exports = grammar({ $._indent, $._dedent, $._newline, - $.string_start, - $.string_end, - $.string_body, - $.raw_string_start, - $.raw_string_end, - $.command_start, - $.command_end, + $._string_start, + $._string_end, + $._string_body, + $._raw_string_start, + $._raw_string_end, + $._command_start, + $._command_end, ], inline: ( $, @@ -310,21 +310,23 @@ module.exports = grammar({ string_literal: ($) => seq( - $.string_start, - repeat(choice($.string_body, $.escape_sequence)), - $.string_end, + $._string_start, + repeat(choice($._string_body, $.escape_sequence)), + $._string_end, ), raw_string_literal: ($) => - seq($.raw_string_start, optional($.string_body), $.raw_string_end), + seq($._raw_string_start, optional($._string_body), $._raw_string_end), external_command: ($) => seq( - $.command_start, - repeat(choice($.string_body, $.interpolation)), - $.command_end, + $._command_start, + repeat(choice(prec(1, $.interpolation), $.command_body)), + $._command_end, ), + command_body: ($) => $._string_body, + escape_sequence: (_) => ESCAPE_SEQUENCE, text: (_) => /.+/, //recipe TEXT, only matches in a recipe body diff --git a/queries-src/highlights.scm b/queries-src/highlights.scm index 43384de..96875bb 100644 --- a/queries-src/highlights.scm +++ b/queries-src/highlights.scm @@ -100,6 +100,6 @@ ["," ":"] @punctuation.delimiter -"`" @punctuation.special +; "`" @punctuation.special (ERROR) @error diff --git a/queries-src/indents.scm b/queries-src/indents.scm index 7a5e40d..82cb7ab 100644 --- a/queries-src/indents.scm +++ b/queries-src/indents.scm @@ -3,5 +3,6 @@ ; Better documentation is in https://docs.helix-editor.com/guides/indent.html (recipe) @indent @extend -(string) @indent @extend +(string_literal) @indent @extend +(raw_string_literal) @indent @extend (external_command) @indent @extend diff --git a/queries/just/highlights.scm b/queries/just/highlights.scm index fe84eda..21e68d3 100644 --- a/queries/just/highlights.scm +++ b/queries/just/highlights.scm @@ -102,6 +102,6 @@ ["," ":"] @punctuation.delimiter -"`" @punctuation.special +; "`" @punctuation.special (ERROR) @error diff --git a/queries/just/indents.scm b/queries/just/indents.scm index abdd8bc..0d98edd 100644 --- a/queries/just/indents.scm +++ b/queries/just/indents.scm @@ -5,5 +5,6 @@ ; Better documentation is in https://docs.helix-editor.com/guides/indent.html (recipe) @indent @extend -(string) @indent @extend +(string_literal) @indent @extend +(raw_string_literal) @indent @extend (external_command) @indent @extend diff --git a/src/grammar.json b/src/grammar.json index 3a0342a..517388a 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -1299,7 +1299,7 @@ "members": [ { "type": "SYMBOL", - "name": "string_start" + "name": "_string_start" }, { "type": "REPEAT", @@ -1308,7 +1308,7 @@ "members": [ { "type": "SYMBOL", - "name": "string_body" + "name": "_string_body" }, { "type": "SYMBOL", @@ -1319,7 +1319,7 @@ }, { "type": "SYMBOL", - "name": "string_end" + "name": "_string_end" } ] }, @@ -1328,14 +1328,14 @@ "members": [ { "type": "SYMBOL", - "name": "raw_string_start" + "name": "_raw_string_start" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "string_body" + "name": "_string_body" }, { "type": "BLANK" @@ -1344,7 +1344,7 @@ }, { "type": "SYMBOL", - "name": "raw_string_end" + "name": "_raw_string_end" } ] }, @@ -1353,7 +1353,7 @@ "members": [ { "type": "SYMBOL", - "name": "command_start" + "name": "_command_start" }, { "type": "REPEAT", @@ -1361,22 +1361,30 @@ "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "string_body" + "type": "PREC", + "value": 1, + "content": { + "type": "SYMBOL", + "name": "interpolation" + } }, { "type": "SYMBOL", - "name": "interpolation" + "name": "command_body" } ] } }, { "type": "SYMBOL", - "name": "command_end" + "name": "_command_end" } ] }, + "command_body": { + "type": "SYMBOL", + "name": "_string_body" + }, "escape_sequence": { "type": "TOKEN", "content": { @@ -1412,31 +1420,31 @@ }, { "type": "SYMBOL", - "name": "string_start" + "name": "_string_start" }, { "type": "SYMBOL", - "name": "string_end" + "name": "_string_end" }, { "type": "SYMBOL", - "name": "string_body" + "name": "_string_body" }, { "type": "SYMBOL", - "name": "raw_string_start" + "name": "_raw_string_start" }, { "type": "SYMBOL", - "name": "raw_string_end" + "name": "_raw_string_end" }, { "type": "SYMBOL", - "name": "command_start" + "name": "_command_start" }, { "type": "SYMBOL", - "name": "command_end" + "name": "_command_end" } ], "inline": [ diff --git a/src/node-types.json b/src/node-types.json index 158f00d..0b5fdbd 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -106,6 +106,11 @@ "named": true, "fields": {} }, + { + "type": "command_body", + "named": true, + "fields": {} + }, { "type": "comment", "named": true, @@ -252,23 +257,15 @@ "fields": {}, "children": { "multiple": true, - "required": true, + "required": false, "types": [ { - "type": "command_end", - "named": true - }, - { - "type": "command_start", + "type": "command_body", "named": true }, { "type": "interpolation", "named": true - }, - { - "type": "string_body", - "named": true } ] } @@ -480,25 +477,7 @@ { "type": "raw_string_literal", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "raw_string_end", - "named": true - }, - { - "type": "raw_string_start", - "named": true - }, - { - "type": "string_body", - "named": true - } - ] - } + "fields": {} }, { "type": "recipe", @@ -748,23 +727,11 @@ "fields": {}, "children": { "multiple": true, - "required": true, + "required": false, "types": [ { "type": "escape_sequence", "named": true - }, - { - "type": "string_body", - "named": true - }, - { - "type": "string_end", - "named": true - }, - { - "type": "string_start", - "named": true } ] } @@ -922,14 +889,6 @@ "type": "alias", "named": false }, - { - "type": "command_end", - "named": true - }, - { - "type": "command_start", - "named": true - }, { "type": "else", "named": false @@ -962,14 +921,6 @@ "type": "mod", "named": false }, - { - "type": "raw_string_end", - "named": true - }, - { - "type": "raw_string_start", - "named": true - }, { "type": "set", "named": false @@ -978,18 +929,6 @@ "type": "shell", "named": false }, - { - "type": "string_body", - "named": true - }, - { - "type": "string_end", - "named": true - }, - { - "type": "string_start", - "named": true - }, { "type": "text", "named": true diff --git a/src/parser.c b/src/parser.c index 0c36417..64d49b7 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,9 +6,9 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 362 +#define STATE_COUNT 363 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 101 +#define SYMBOL_COUNT 102 #define ALIAS_COUNT 1 #define TOKEN_COUNT 51 #define EXTERNAL_TOKEN_COUNT 10 @@ -60,13 +60,13 @@ enum { sym__indent = 41, sym__dedent = 42, sym__newline = 43, - sym_string_start = 44, - sym_string_end = 45, - sym_string_body = 46, - sym_raw_string_start = 47, - sym_raw_string_end = 48, - sym_command_start = 49, - sym_command_end = 50, + sym__string_start = 44, + sym__string_end = 45, + sym__string_body = 46, + sym__raw_string_start = 47, + sym__raw_string_end = 48, + sym__command_start = 49, + sym__command_end = 50, sym_source_file = 51, sym_item = 52, sym_eol = 53, @@ -104,20 +104,21 @@ enum { sym_string_literal = 85, sym_raw_string_literal = 86, sym_external_command = 87, - aux_sym_source_file_repeat1 = 88, - aux_sym_setting_repeat1 = 89, - aux_sym_if_expression_repeat1 = 90, - aux_sym_sequence_repeat1 = 91, - aux_sym_attribute_repeat1 = 92, - aux_sym_recipe_repeat1 = 93, - aux_sym_parameters_repeat1 = 94, - aux_sym_dependencies_repeat1 = 95, - aux_sym_dependency_expression_repeat1 = 96, - aux_sym_recipe_body_repeat1 = 97, - aux_sym_recipe_line_repeat1 = 98, - aux_sym_string_literal_repeat1 = 99, - aux_sym_external_command_repeat1 = 100, - anon_alias_sym_expression = 101, + sym_command_body = 88, + aux_sym_source_file_repeat1 = 89, + aux_sym_setting_repeat1 = 90, + aux_sym_if_expression_repeat1 = 91, + aux_sym_sequence_repeat1 = 92, + aux_sym_attribute_repeat1 = 93, + aux_sym_recipe_repeat1 = 94, + aux_sym_parameters_repeat1 = 95, + aux_sym_dependencies_repeat1 = 96, + aux_sym_dependency_expression_repeat1 = 97, + aux_sym_recipe_body_repeat1 = 98, + aux_sym_recipe_line_repeat1 = 99, + aux_sym_string_literal_repeat1 = 100, + aux_sym_external_command_repeat1 = 101, + anon_alias_sym_expression = 102, }; static const char * const ts_symbol_names[] = { @@ -165,13 +166,13 @@ static const char * const ts_symbol_names[] = { [sym__indent] = "_indent", [sym__dedent] = "_dedent", [sym__newline] = "_newline", - [sym_string_start] = "string_start", - [sym_string_end] = "string_end", - [sym_string_body] = "string_body", - [sym_raw_string_start] = "raw_string_start", - [sym_raw_string_end] = "raw_string_end", - [sym_command_start] = "command_start", - [sym_command_end] = "command_end", + [sym__string_start] = "_string_start", + [sym__string_end] = "_string_end", + [sym__string_body] = "_string_body", + [sym__raw_string_start] = "_raw_string_start", + [sym__raw_string_end] = "_raw_string_end", + [sym__command_start] = "_command_start", + [sym__command_end] = "_command_end", [sym_source_file] = "source_file", [sym_item] = "item", [sym_eol] = "eol", @@ -209,6 +210,7 @@ static const char * const ts_symbol_names[] = { [sym_string_literal] = "string_literal", [sym_raw_string_literal] = "raw_string_literal", [sym_external_command] = "external_command", + [sym_command_body] = "command_body", [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_setting_repeat1] = "setting_repeat1", [aux_sym_if_expression_repeat1] = "if_expression_repeat1", @@ -270,13 +272,13 @@ static const TSSymbol ts_symbol_map[] = { [sym__indent] = sym__indent, [sym__dedent] = sym__dedent, [sym__newline] = sym__newline, - [sym_string_start] = sym_string_start, - [sym_string_end] = sym_string_end, - [sym_string_body] = sym_string_body, - [sym_raw_string_start] = sym_raw_string_start, - [sym_raw_string_end] = sym_raw_string_end, - [sym_command_start] = sym_command_start, - [sym_command_end] = sym_command_end, + [sym__string_start] = sym__string_start, + [sym__string_end] = sym__string_end, + [sym__string_body] = sym__string_body, + [sym__raw_string_start] = sym__raw_string_start, + [sym__raw_string_end] = sym__raw_string_end, + [sym__command_start] = sym__command_start, + [sym__command_end] = sym__command_end, [sym_source_file] = sym_source_file, [sym_item] = sym_item, [sym_eol] = sym_eol, @@ -314,6 +316,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_string_literal] = sym_string_literal, [sym_raw_string_literal] = sym_raw_string_literal, [sym_external_command] = sym_external_command, + [sym_command_body] = sym_command_body, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_setting_repeat1] = aux_sym_setting_repeat1, [aux_sym_if_expression_repeat1] = aux_sym_if_expression_repeat1, @@ -507,32 +510,32 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, - [sym_string_start] = { - .visible = true, + [sym__string_start] = { + .visible = false, .named = true, }, - [sym_string_end] = { - .visible = true, + [sym__string_end] = { + .visible = false, .named = true, }, - [sym_string_body] = { - .visible = true, + [sym__string_body] = { + .visible = false, .named = true, }, - [sym_raw_string_start] = { - .visible = true, + [sym__raw_string_start] = { + .visible = false, .named = true, }, - [sym_raw_string_end] = { - .visible = true, + [sym__raw_string_end] = { + .visible = false, .named = true, }, - [sym_command_start] = { - .visible = true, + [sym__command_start] = { + .visible = false, .named = true, }, - [sym_command_end] = { - .visible = true, + [sym__command_end] = { + .visible = false, .named = true, }, [sym_source_file] = { @@ -683,6 +686,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_command_body] = { + .visible = true, + .named = true, + }, [aux_sym_source_file_repeat1] = { .visible = false, .named = false, @@ -1007,58 +1014,58 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [11] = 6, [12] = 12, [13] = 13, - [14] = 12, - [15] = 13, - [16] = 12, - [17] = 13, + [14] = 13, + [15] = 12, + [16] = 13, + [17] = 12, [18] = 13, [19] = 12, [20] = 20, - [21] = 21, + [21] = 20, [22] = 22, - [23] = 21, + [23] = 23, [24] = 24, - [25] = 25, - [26] = 22, + [25] = 20, + [26] = 26, [27] = 27, - [28] = 21, + [28] = 26, [29] = 29, - [30] = 30, - [31] = 22, - [32] = 29, - [33] = 21, - [34] = 22, + [30] = 20, + [31] = 24, + [32] = 26, + [33] = 26, + [34] = 34, [35] = 35, [36] = 36, [37] = 37, - [38] = 36, - [39] = 37, + [38] = 38, + [39] = 39, [40] = 40, - [41] = 41, - [42] = 40, - [43] = 36, - [44] = 37, - [45] = 36, + [41] = 37, + [42] = 42, + [43] = 43, + [44] = 42, + [45] = 42, [46] = 46, - [47] = 47, - [48] = 40, - [49] = 49, - [50] = 50, - [51] = 37, - [52] = 40, + [47] = 37, + [48] = 42, + [49] = 46, + [50] = 37, + [51] = 46, + [52] = 46, [53] = 53, - [54] = 41, + [54] = 40, [55] = 55, - [56] = 46, - [57] = 50, + [56] = 43, + [57] = 57, [58] = 58, - [59] = 49, + [59] = 39, [60] = 60, [61] = 61, [62] = 62, [63] = 63, [64] = 64, - [65] = 65, + [65] = 36, [66] = 66, [67] = 67, [68] = 68, @@ -1076,14 +1083,14 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [80] = 80, [81] = 81, [82] = 82, - [83] = 83, + [83] = 72, [84] = 84, - [85] = 70, - [86] = 86, + [85] = 85, + [86] = 74, [87] = 87, [88] = 88, [89] = 89, - [90] = 75, + [90] = 90, [91] = 91, [92] = 92, [93] = 93, @@ -1096,210 +1103,210 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [100] = 100, [101] = 101, [102] = 102, - [103] = 79, - [104] = 104, + [103] = 103, + [104] = 99, [105] = 105, - [106] = 106, - [107] = 105, - [108] = 106, - [109] = 109, - [110] = 110, - [111] = 111, - [112] = 112, - [113] = 68, + [106] = 105, + [107] = 107, + [108] = 108, + [109] = 107, + [110] = 66, + [111] = 67, + [112] = 60, + [113] = 113, [114] = 114, [115] = 115, - [116] = 115, - [117] = 117, + [116] = 116, + [117] = 68, [118] = 118, - [119] = 41, - [120] = 120, - [121] = 65, - [122] = 110, - [123] = 64, - [124] = 46, - [125] = 49, + [119] = 40, + [120] = 114, + [121] = 39, + [122] = 36, + [123] = 38, + [124] = 124, + [125] = 118, [126] = 126, - [127] = 58, - [128] = 117, - [129] = 129, - [130] = 55, - [131] = 62, - [132] = 50, - [133] = 120, - [134] = 118, - [135] = 111, - [136] = 114, - [137] = 47, + [127] = 116, + [128] = 115, + [129] = 43, + [130] = 130, + [131] = 131, + [132] = 131, + [133] = 53, + [134] = 64, + [135] = 135, + [136] = 126, + [137] = 135, [138] = 138, [139] = 139, - [140] = 86, - [141] = 141, + [140] = 140, + [141] = 140, [142] = 142, [143] = 143, - [144] = 142, + [144] = 144, [145] = 145, - [146] = 145, - [147] = 147, + [146] = 146, + [147] = 144, [148] = 148, - [149] = 149, + [149] = 95, [150] = 150, [151] = 151, [152] = 152, - [153] = 79, + [153] = 153, [154] = 154, - [155] = 75, - [156] = 70, + [155] = 99, + [156] = 156, [157] = 157, [158] = 158, [159] = 159, - [160] = 160, + [160] = 154, [161] = 161, - [162] = 162, - [163] = 163, - [164] = 164, - [165] = 165, - [166] = 166, + [162] = 161, + [163] = 154, + [164] = 161, + [165] = 161, + [166] = 154, [167] = 167, [168] = 168, - [169] = 169, + [169] = 74, [170] = 170, [171] = 171, [172] = 172, [173] = 173, - [174] = 75, + [174] = 72, [175] = 175, [176] = 176, [177] = 177, [178] = 178, - [179] = 179, - [180] = 180, - [181] = 176, + [179] = 99, + [180] = 72, + [181] = 74, [182] = 182, [183] = 183, - [184] = 177, - [185] = 177, + [184] = 184, + [185] = 105, [186] = 186, - [187] = 176, - [188] = 47, - [189] = 70, - [190] = 106, - [191] = 105, - [192] = 177, - [193] = 79, - [194] = 176, + [187] = 187, + [188] = 188, + [189] = 189, + [190] = 38, + [191] = 191, + [192] = 107, + [193] = 193, + [194] = 194, [195] = 195, - [196] = 111, - [197] = 49, - [198] = 64, - [199] = 68, + [196] = 67, + [197] = 197, + [198] = 107, + [199] = 199, [200] = 200, [201] = 201, - [202] = 202, - [203] = 65, + [202] = 114, + [203] = 203, [204] = 204, [205] = 205, - [206] = 206, + [206] = 118, [207] = 207, [208] = 208, [209] = 209, - [210] = 209, - [211] = 206, - [212] = 209, - [213] = 120, + [210] = 197, + [211] = 211, + [212] = 212, + [213] = 38, [214] = 214, - [215] = 118, - [216] = 216, + [215] = 215, + [216] = 53, [217] = 217, - [218] = 114, - [219] = 206, - [220] = 209, - [221] = 221, - [222] = 222, - [223] = 206, - [224] = 110, - [225] = 55, - [226] = 209, - [227] = 106, + [218] = 218, + [219] = 219, + [220] = 60, + [221] = 126, + [222] = 131, + [223] = 223, + [224] = 197, + [225] = 207, + [226] = 197, + [227] = 207, [228] = 228, - [229] = 105, - [230] = 58, + [229] = 229, + [230] = 230, [231] = 231, - [232] = 50, - [233] = 233, - [234] = 234, - [235] = 235, + [232] = 135, + [233] = 64, + [234] = 197, + [235] = 207, [236] = 236, - [237] = 237, - [238] = 206, - [239] = 239, - [240] = 240, - [241] = 47, - [242] = 41, - [243] = 46, - [244] = 62, - [245] = 117, - [246] = 115, - [247] = 247, - [248] = 58, - [249] = 111, + [237] = 207, + [238] = 238, + [239] = 115, + [240] = 116, + [241] = 105, + [242] = 40, + [243] = 39, + [244] = 43, + [245] = 68, + [246] = 36, + [247] = 66, + [248] = 39, + [249] = 249, [250] = 250, [251] = 251, - [252] = 252, + [252] = 250, [253] = 253, - [254] = 252, + [254] = 254, [255] = 255, [256] = 256, - [257] = 252, - [258] = 258, - [259] = 253, - [260] = 78, - [261] = 252, - [262] = 253, + [257] = 251, + [258] = 250, + [259] = 43, + [260] = 260, + [261] = 261, + [262] = 255, [263] = 263, - [264] = 114, - [265] = 251, - [266] = 266, - [267] = 41, - [268] = 46, - [269] = 49, - [270] = 115, - [271] = 117, - [272] = 62, - [273] = 50, - [274] = 274, - [275] = 55, - [276] = 110, + [264] = 36, + [265] = 265, + [266] = 115, + [267] = 267, + [268] = 250, + [269] = 94, + [270] = 126, + [271] = 135, + [272] = 64, + [273] = 77, + [274] = 40, + [275] = 53, + [276] = 131, [277] = 277, - [278] = 253, - [279] = 279, - [280] = 64, - [281] = 65, - [282] = 120, - [283] = 118, - [284] = 284, - [285] = 68, - [286] = 69, - [287] = 287, + [278] = 66, + [279] = 67, + [280] = 68, + [281] = 116, + [282] = 255, + [283] = 255, + [284] = 60, + [285] = 285, + [286] = 114, + [287] = 118, [288] = 288, [289] = 289, [290] = 290, [291] = 291, - [292] = 287, - [293] = 288, + [292] = 292, + [293] = 293, [294] = 294, [295] = 295, - [296] = 296, - [297] = 297, - [298] = 287, + [296] = 289, + [297] = 288, + [298] = 298, [299] = 288, - [300] = 287, - [301] = 288, - [302] = 294, - [303] = 287, - [304] = 294, - [305] = 294, - [306] = 306, + [300] = 289, + [301] = 298, + [302] = 288, + [303] = 289, + [304] = 298, + [305] = 298, + [306] = 288, [307] = 307, [308] = 308, [309] = 309, @@ -1308,53 +1315,54 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [312] = 312, [313] = 313, [314] = 314, - [315] = 315, + [315] = 311, [316] = 316, - [317] = 308, - [318] = 308, - [319] = 319, - [320] = 310, - [321] = 310, - [322] = 313, - [323] = 314, - [324] = 324, + [317] = 312, + [318] = 318, + [319] = 318, + [320] = 320, + [321] = 321, + [322] = 309, + [323] = 312, + [324] = 313, [325] = 325, [326] = 326, - [327] = 314, + [327] = 327, [328] = 328, [329] = 329, - [330] = 308, - [331] = 313, - [332] = 332, + [330] = 330, + [331] = 318, + [332] = 313, [333] = 333, - [334] = 312, - [335] = 310, - [336] = 336, - [337] = 313, - [338] = 314, - [339] = 339, + [334] = 334, + [335] = 335, + [336] = 309, + [337] = 337, + [338] = 312, + [339] = 313, [340] = 340, [341] = 341, - [342] = 342, + [342] = 318, [343] = 343, - [344] = 344, - [345] = 308, - [346] = 346, + [344] = 309, + [345] = 345, + [346] = 318, [347] = 347, [348] = 348, [349] = 349, [350] = 350, - [351] = 319, - [352] = 328, - [353] = 329, + [351] = 350, + [352] = 348, + [353] = 353, [354] = 354, [355] = 355, - [356] = 319, - [357] = 357, + [356] = 353, + [357] = 348, [358] = 358, [359] = 359, [360] = 360, - [361] = 319, + [361] = 361, + [362] = 348, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1916,9 +1924,9 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [19] = {.lex_state = 0, .external_lex_state = 3}, [20] = {.lex_state = 0, .external_lex_state = 3}, [21] = {.lex_state = 0, .external_lex_state = 3}, - [22] = {.lex_state = 0, .external_lex_state = 3}, + [22] = {.lex_state = 13, .external_lex_state = 4}, [23] = {.lex_state = 0, .external_lex_state = 3}, - [24] = {.lex_state = 13, .external_lex_state = 4}, + [24] = {.lex_state = 0, .external_lex_state = 3}, [25] = {.lex_state = 0, .external_lex_state = 3}, [26] = {.lex_state = 0, .external_lex_state = 3}, [27] = {.lex_state = 13, .external_lex_state = 4}, @@ -1930,63 +1938,63 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [33] = {.lex_state = 0, .external_lex_state = 3}, [34] = {.lex_state = 0, .external_lex_state = 3}, [35] = {.lex_state = 1, .external_lex_state = 5}, - [36] = {.lex_state = 0, .external_lex_state = 3}, + [36] = {.lex_state = 12}, [37] = {.lex_state = 0, .external_lex_state = 3}, - [38] = {.lex_state = 0, .external_lex_state = 3}, - [39] = {.lex_state = 0, .external_lex_state = 3}, - [40] = {.lex_state = 0, .external_lex_state = 3}, - [41] = {.lex_state = 12}, + [38] = {.lex_state = 12}, + [39] = {.lex_state = 12}, + [40] = {.lex_state = 12}, + [41] = {.lex_state = 0, .external_lex_state = 3}, [42] = {.lex_state = 0, .external_lex_state = 3}, - [43] = {.lex_state = 0, .external_lex_state = 3}, + [43] = {.lex_state = 12}, [44] = {.lex_state = 0, .external_lex_state = 3}, [45] = {.lex_state = 0, .external_lex_state = 3}, - [46] = {.lex_state = 12}, - [47] = {.lex_state = 12}, + [46] = {.lex_state = 0, .external_lex_state = 3}, + [47] = {.lex_state = 0, .external_lex_state = 3}, [48] = {.lex_state = 0, .external_lex_state = 3}, - [49] = {.lex_state = 12}, - [50] = {.lex_state = 12}, + [49] = {.lex_state = 0, .external_lex_state = 3}, + [50] = {.lex_state = 0, .external_lex_state = 3}, [51] = {.lex_state = 0, .external_lex_state = 3}, [52] = {.lex_state = 0, .external_lex_state = 3}, - [53] = {.lex_state = 2, .external_lex_state = 5}, + [53] = {.lex_state = 12}, [54] = {.lex_state = 13, .external_lex_state = 2}, - [55] = {.lex_state = 12}, + [55] = {.lex_state = 2, .external_lex_state = 5}, [56] = {.lex_state = 13, .external_lex_state = 2}, - [57] = {.lex_state = 13, .external_lex_state = 2}, - [58] = {.lex_state = 12}, + [57] = {.lex_state = 2, .external_lex_state = 5}, + [58] = {.lex_state = 2, .external_lex_state = 5}, [59] = {.lex_state = 13, .external_lex_state = 2}, - [60] = {.lex_state = 13, .external_lex_state = 6}, - [61] = {.lex_state = 2, .external_lex_state = 5}, - [62] = {.lex_state = 12}, + [60] = {.lex_state = 12}, + [61] = {.lex_state = 13, .external_lex_state = 6}, + [62] = {.lex_state = 2, .external_lex_state = 5}, [63] = {.lex_state = 13, .external_lex_state = 6}, [64] = {.lex_state = 12}, - [65] = {.lex_state = 12}, - [66] = {.lex_state = 2, .external_lex_state = 5}, - [67] = {.lex_state = 2, .external_lex_state = 5}, + [65] = {.lex_state = 13, .external_lex_state = 2}, + [66] = {.lex_state = 12}, + [67] = {.lex_state = 12}, [68] = {.lex_state = 12}, [69] = {.lex_state = 13, .external_lex_state = 2}, - [70] = {.lex_state = 0, .external_lex_state = 3}, + [70] = {.lex_state = 13, .external_lex_state = 2}, [71] = {.lex_state = 13, .external_lex_state = 2}, - [72] = {.lex_state = 13, .external_lex_state = 2}, + [72] = {.lex_state = 12}, [73] = {.lex_state = 13, .external_lex_state = 2}, - [74] = {.lex_state = 13, .external_lex_state = 2}, - [75] = {.lex_state = 12}, + [74] = {.lex_state = 0, .external_lex_state = 3}, + [75] = {.lex_state = 13, .external_lex_state = 2}, [76] = {.lex_state = 13, .external_lex_state = 2}, [77] = {.lex_state = 13, .external_lex_state = 2}, [78] = {.lex_state = 13, .external_lex_state = 2}, - [79] = {.lex_state = 12}, + [79] = {.lex_state = 13, .external_lex_state = 2}, [80] = {.lex_state = 13, .external_lex_state = 2}, - [81] = {.lex_state = 0, .external_lex_state = 3}, + [81] = {.lex_state = 13, .external_lex_state = 2}, [82] = {.lex_state = 13, .external_lex_state = 2}, - [83] = {.lex_state = 13, .external_lex_state = 2}, + [83] = {.lex_state = 0, .external_lex_state = 3}, [84] = {.lex_state = 13, .external_lex_state = 2}, - [85] = {.lex_state = 12}, - [86] = {.lex_state = 13, .external_lex_state = 2}, + [85] = {.lex_state = 13, .external_lex_state = 2}, + [86] = {.lex_state = 12}, [87] = {.lex_state = 13, .external_lex_state = 2}, [88] = {.lex_state = 13, .external_lex_state = 2}, [89] = {.lex_state = 13, .external_lex_state = 2}, - [90] = {.lex_state = 0, .external_lex_state = 3}, + [90] = {.lex_state = 13, .external_lex_state = 2}, [91] = {.lex_state = 13, .external_lex_state = 2}, - [92] = {.lex_state = 13, .external_lex_state = 2}, + [92] = {.lex_state = 0, .external_lex_state = 3}, [93] = {.lex_state = 13, .external_lex_state = 2}, [94] = {.lex_state = 13, .external_lex_state = 2}, [95] = {.lex_state = 13, .external_lex_state = 2}, @@ -1998,290 +2006,291 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [101] = {.lex_state = 13, .external_lex_state = 2}, [102] = {.lex_state = 13, .external_lex_state = 2}, [103] = {.lex_state = 0, .external_lex_state = 3}, - [104] = {.lex_state = 13, .external_lex_state = 2}, - [105] = {.lex_state = 0, .external_lex_state = 3}, + [104] = {.lex_state = 12}, + [105] = {.lex_state = 12}, [106] = {.lex_state = 0, .external_lex_state = 3}, [107] = {.lex_state = 12}, - [108] = {.lex_state = 12}, - [109] = {.lex_state = 0}, + [108] = {.lex_state = 0}, + [109] = {.lex_state = 0, .external_lex_state = 3}, [110] = {.lex_state = 0, .external_lex_state = 3}, [111] = {.lex_state = 0, .external_lex_state = 3}, - [112] = {.lex_state = 0}, - [113] = {.lex_state = 0, .external_lex_state = 3}, + [112] = {.lex_state = 0, .external_lex_state = 3}, + [113] = {.lex_state = 0}, [114] = {.lex_state = 0, .external_lex_state = 3}, [115] = {.lex_state = 0, .external_lex_state = 3}, - [116] = {.lex_state = 12}, - [117] = {.lex_state = 12}, + [116] = {.lex_state = 0, .external_lex_state = 3}, + [117] = {.lex_state = 0, .external_lex_state = 3}, [118] = {.lex_state = 0, .external_lex_state = 3}, [119] = {.lex_state = 0, .external_lex_state = 3}, - [120] = {.lex_state = 0, .external_lex_state = 3}, + [120] = {.lex_state = 12}, [121] = {.lex_state = 0, .external_lex_state = 3}, - [122] = {.lex_state = 12}, + [122] = {.lex_state = 0, .external_lex_state = 3}, [123] = {.lex_state = 0, .external_lex_state = 3}, - [124] = {.lex_state = 0, .external_lex_state = 3}, - [125] = {.lex_state = 0, .external_lex_state = 3}, - [126] = {.lex_state = 0, .external_lex_state = 7}, - [127] = {.lex_state = 0, .external_lex_state = 3}, - [128] = {.lex_state = 0, .external_lex_state = 3}, - [129] = {.lex_state = 0}, - [130] = {.lex_state = 0, .external_lex_state = 3}, - [131] = {.lex_state = 0, .external_lex_state = 3}, + [124] = {.lex_state = 0}, + [125] = {.lex_state = 12}, + [126] = {.lex_state = 12}, + [127] = {.lex_state = 12}, + [128] = {.lex_state = 12}, + [129] = {.lex_state = 0, .external_lex_state = 3}, + [130] = {.lex_state = 0, .external_lex_state = 7}, + [131] = {.lex_state = 12}, [132] = {.lex_state = 0, .external_lex_state = 3}, - [133] = {.lex_state = 12}, - [134] = {.lex_state = 12}, - [135] = {.lex_state = 12}, - [136] = {.lex_state = 12}, - [137] = {.lex_state = 0, .external_lex_state = 3}, - [138] = {.lex_state = 2, .external_lex_state = 5}, - [139] = {.lex_state = 0, .external_lex_state = 2}, - [140] = {.lex_state = 2, .external_lex_state = 5}, - [141] = {.lex_state = 0, .external_lex_state = 7}, - [142] = {.lex_state = 0, .external_lex_state = 2}, - [143] = {.lex_state = 2, .external_lex_state = 5}, + [133] = {.lex_state = 0, .external_lex_state = 3}, + [134] = {.lex_state = 0, .external_lex_state = 3}, + [135] = {.lex_state = 0, .external_lex_state = 3}, + [136] = {.lex_state = 0, .external_lex_state = 3}, + [137] = {.lex_state = 12}, + [138] = {.lex_state = 0, .external_lex_state = 7}, + [139] = {.lex_state = 0, .external_lex_state = 7}, + [140] = {.lex_state = 0, .external_lex_state = 2}, + [141] = {.lex_state = 0, .external_lex_state = 2}, + [142] = {.lex_state = 0, .external_lex_state = 7}, + [143] = {.lex_state = 0, .external_lex_state = 7}, [144] = {.lex_state = 0, .external_lex_state = 2}, - [145] = {.lex_state = 0, .external_lex_state = 2}, - [146] = {.lex_state = 0, .external_lex_state = 2}, - [147] = {.lex_state = 0, .external_lex_state = 7}, - [148] = {.lex_state = 0, .external_lex_state = 7}, - [149] = {.lex_state = 0, .external_lex_state = 3}, - [150] = {.lex_state = 0, .external_lex_state = 7}, + [145] = {.lex_state = 2, .external_lex_state = 5}, + [146] = {.lex_state = 2, .external_lex_state = 5}, + [147] = {.lex_state = 0, .external_lex_state = 2}, + [148] = {.lex_state = 0, .external_lex_state = 3}, + [149] = {.lex_state = 2, .external_lex_state = 5}, + [150] = {.lex_state = 0, .external_lex_state = 2}, [151] = {.lex_state = 2, .external_lex_state = 5}, [152] = {.lex_state = 0}, - [153] = {.lex_state = 13, .external_lex_state = 2}, - [154] = {.lex_state = 0, .external_lex_state = 7}, + [153] = {.lex_state = 0, .external_lex_state = 7}, + [154] = {.lex_state = 13, .external_lex_state = 8}, [155] = {.lex_state = 13, .external_lex_state = 2}, - [156] = {.lex_state = 13, .external_lex_state = 2}, - [157] = {.lex_state = 12}, - [158] = {.lex_state = 0}, + [156] = {.lex_state = 12}, + [157] = {.lex_state = 13, .external_lex_state = 8}, + [158] = {.lex_state = 0, .external_lex_state = 7}, [159] = {.lex_state = 0, .external_lex_state = 2}, - [160] = {.lex_state = 0, .external_lex_state = 7}, - [161] = {.lex_state = 0, .external_lex_state = 2}, - [162] = {.lex_state = 0, .external_lex_state = 2}, - [163] = {.lex_state = 0, .external_lex_state = 2}, - [164] = {.lex_state = 13}, - [165] = {.lex_state = 13}, - [166] = {.lex_state = 0, .external_lex_state = 7}, - [167] = {.lex_state = 0, .external_lex_state = 7}, - [168] = {.lex_state = 0}, + [160] = {.lex_state = 13, .external_lex_state = 8}, + [161] = {.lex_state = 13, .external_lex_state = 8}, + [162] = {.lex_state = 13, .external_lex_state = 8}, + [163] = {.lex_state = 13, .external_lex_state = 8}, + [164] = {.lex_state = 13, .external_lex_state = 8}, + [165] = {.lex_state = 13, .external_lex_state = 8}, + [166] = {.lex_state = 13, .external_lex_state = 8}, + [167] = {.lex_state = 0, .external_lex_state = 2}, + [168] = {.lex_state = 0, .external_lex_state = 7}, [169] = {.lex_state = 13, .external_lex_state = 2}, - [170] = {.lex_state = 3, .external_lex_state = 2}, - [171] = {.lex_state = 0}, - [172] = {.lex_state = 13, .external_lex_state = 8}, - [173] = {.lex_state = 3, .external_lex_state = 2}, - [174] = {.lex_state = 0}, - [175] = {.lex_state = 0}, - [176] = {.lex_state = 13, .external_lex_state = 8}, - [177] = {.lex_state = 13, .external_lex_state = 8}, - [178] = {.lex_state = 0}, - [179] = {.lex_state = 3, .external_lex_state = 2}, - [180] = {.lex_state = 12}, - [181] = {.lex_state = 13, .external_lex_state = 8}, - [182] = {.lex_state = 3, .external_lex_state = 2}, - [183] = {.lex_state = 0, .external_lex_state = 7}, - [184] = {.lex_state = 13, .external_lex_state = 8}, - [185] = {.lex_state = 13, .external_lex_state = 8}, - [186] = {.lex_state = 0, .external_lex_state = 7}, - [187] = {.lex_state = 13, .external_lex_state = 8}, + [170] = {.lex_state = 0}, + [171] = {.lex_state = 13}, + [172] = {.lex_state = 13}, + [173] = {.lex_state = 0, .external_lex_state = 2}, + [174] = {.lex_state = 13, .external_lex_state = 2}, + [175] = {.lex_state = 0, .external_lex_state = 2}, + [176] = {.lex_state = 12}, + [177] = {.lex_state = 0}, + [178] = {.lex_state = 0, .external_lex_state = 7}, + [179] = {.lex_state = 0}, + [180] = {.lex_state = 0}, + [181] = {.lex_state = 0}, + [182] = {.lex_state = 0}, + [183] = {.lex_state = 0}, + [184] = {.lex_state = 0}, + [185] = {.lex_state = 13, .external_lex_state = 2}, + [186] = {.lex_state = 0}, + [187] = {.lex_state = 0, .external_lex_state = 7}, [188] = {.lex_state = 13, .external_lex_state = 2}, - [189] = {.lex_state = 0}, + [189] = {.lex_state = 0, .external_lex_state = 7}, [190] = {.lex_state = 13, .external_lex_state = 2}, - [191] = {.lex_state = 13, .external_lex_state = 2}, - [192] = {.lex_state = 13, .external_lex_state = 8}, - [193] = {.lex_state = 0}, - [194] = {.lex_state = 13, .external_lex_state = 8}, - [195] = {.lex_state = 0}, + [191] = {.lex_state = 3, .external_lex_state = 2}, + [192] = {.lex_state = 13, .external_lex_state = 2}, + [193] = {.lex_state = 3, .external_lex_state = 2}, + [194] = {.lex_state = 3, .external_lex_state = 2}, + [195] = {.lex_state = 3, .external_lex_state = 2}, [196] = {.lex_state = 13, .external_lex_state = 2}, - [197] = {.lex_state = 0, .external_lex_state = 7}, - [198] = {.lex_state = 13, .external_lex_state = 2}, + [197] = {.lex_state = 0, .external_lex_state = 9}, + [198] = {.lex_state = 0}, [199] = {.lex_state = 13, .external_lex_state = 2}, [200] = {.lex_state = 0, .external_lex_state = 2}, [201] = {.lex_state = 13, .external_lex_state = 2}, - [202] = {.lex_state = 0, .external_lex_state = 7}, + [202] = {.lex_state = 13, .external_lex_state = 2}, [203] = {.lex_state = 13, .external_lex_state = 2}, [204] = {.lex_state = 13, .external_lex_state = 2}, - [205] = {.lex_state = 13, .external_lex_state = 2}, - [206] = {.lex_state = 0, .external_lex_state = 9}, - [207] = {.lex_state = 13, .external_lex_state = 2}, + [205] = {.lex_state = 0, .external_lex_state = 9}, + [206] = {.lex_state = 13, .external_lex_state = 2}, + [207] = {.lex_state = 0, .external_lex_state = 9}, [208] = {.lex_state = 13, .external_lex_state = 2}, - [209] = {.lex_state = 0, .external_lex_state = 9}, + [209] = {.lex_state = 13, .external_lex_state = 2}, [210] = {.lex_state = 0, .external_lex_state = 9}, - [211] = {.lex_state = 0, .external_lex_state = 9}, - [212] = {.lex_state = 0, .external_lex_state = 9}, - [213] = {.lex_state = 13, .external_lex_state = 2}, + [211] = {.lex_state = 13, .external_lex_state = 2}, + [212] = {.lex_state = 13, .external_lex_state = 2}, + [213] = {.lex_state = 0}, [214] = {.lex_state = 13, .external_lex_state = 2}, [215] = {.lex_state = 13, .external_lex_state = 2}, [216] = {.lex_state = 13, .external_lex_state = 2}, - [217] = {.lex_state = 0, .external_lex_state = 2}, + [217] = {.lex_state = 0, .external_lex_state = 7}, [218] = {.lex_state = 13, .external_lex_state = 2}, - [219] = {.lex_state = 0, .external_lex_state = 9}, - [220] = {.lex_state = 0, .external_lex_state = 9}, - [221] = {.lex_state = 12}, - [222] = {.lex_state = 0, .external_lex_state = 2}, - [223] = {.lex_state = 0, .external_lex_state = 9}, - [224] = {.lex_state = 13, .external_lex_state = 2}, - [225] = {.lex_state = 13, .external_lex_state = 2}, + [219] = {.lex_state = 0, .external_lex_state = 2}, + [220] = {.lex_state = 13, .external_lex_state = 2}, + [221] = {.lex_state = 13, .external_lex_state = 2}, + [222] = {.lex_state = 13, .external_lex_state = 2}, + [223] = {.lex_state = 12}, + [224] = {.lex_state = 0, .external_lex_state = 9}, + [225] = {.lex_state = 0, .external_lex_state = 9}, [226] = {.lex_state = 0, .external_lex_state = 9}, - [227] = {.lex_state = 0}, + [227] = {.lex_state = 0, .external_lex_state = 9}, [228] = {.lex_state = 13, .external_lex_state = 2}, - [229] = {.lex_state = 0}, + [229] = {.lex_state = 13, .external_lex_state = 2}, [230] = {.lex_state = 13, .external_lex_state = 2}, - [231] = {.lex_state = 13, .external_lex_state = 2}, - [232] = {.lex_state = 0, .external_lex_state = 7}, - [233] = {.lex_state = 0, .external_lex_state = 9}, - [234] = {.lex_state = 13, .external_lex_state = 2}, - [235] = {.lex_state = 13, .external_lex_state = 2}, - [236] = {.lex_state = 13, .external_lex_state = 2}, - [237] = {.lex_state = 0, .external_lex_state = 2}, - [238] = {.lex_state = 0, .external_lex_state = 9}, - [239] = {.lex_state = 0, .external_lex_state = 2}, + [231] = {.lex_state = 0, .external_lex_state = 2}, + [232] = {.lex_state = 13, .external_lex_state = 2}, + [233] = {.lex_state = 13, .external_lex_state = 2}, + [234] = {.lex_state = 0, .external_lex_state = 9}, + [235] = {.lex_state = 0, .external_lex_state = 9}, + [236] = {.lex_state = 0, .external_lex_state = 2}, + [237] = {.lex_state = 0, .external_lex_state = 9}, + [238] = {.lex_state = 0, .external_lex_state = 2}, + [239] = {.lex_state = 13, .external_lex_state = 2}, [240] = {.lex_state = 13, .external_lex_state = 2}, [241] = {.lex_state = 0}, [242] = {.lex_state = 0, .external_lex_state = 7}, [243] = {.lex_state = 0, .external_lex_state = 7}, - [244] = {.lex_state = 13, .external_lex_state = 2}, + [244] = {.lex_state = 0, .external_lex_state = 7}, [245] = {.lex_state = 13, .external_lex_state = 2}, - [246] = {.lex_state = 13, .external_lex_state = 2}, + [246] = {.lex_state = 0, .external_lex_state = 7}, [247] = {.lex_state = 13, .external_lex_state = 2}, [248] = {.lex_state = 0}, - [249] = {.lex_state = 0}, - [250] = {.lex_state = 3, .external_lex_state = 2}, + [249] = {.lex_state = 12}, + [250] = {.lex_state = 12}, [251] = {.lex_state = 3, .external_lex_state = 2}, [252] = {.lex_state = 12}, [253] = {.lex_state = 12}, - [254] = {.lex_state = 12}, - [255] = {.lex_state = 0}, - [256] = {.lex_state = 0}, - [257] = {.lex_state = 12}, - [258] = {.lex_state = 0}, - [259] = {.lex_state = 12}, - [260] = {.lex_state = 12}, - [261] = {.lex_state = 12}, + [254] = {.lex_state = 0}, + [255] = {.lex_state = 12}, + [256] = {.lex_state = 3, .external_lex_state = 2}, + [257] = {.lex_state = 13, .external_lex_state = 8}, + [258] = {.lex_state = 12}, + [259] = {.lex_state = 0}, + [260] = {.lex_state = 0}, + [261] = {.lex_state = 0}, [262] = {.lex_state = 12}, - [263] = {.lex_state = 0}, + [263] = {.lex_state = 13, .external_lex_state = 8}, [264] = {.lex_state = 0}, - [265] = {.lex_state = 13, .external_lex_state = 8}, - [266] = {.lex_state = 12}, + [265] = {.lex_state = 0}, + [266] = {.lex_state = 0}, [267] = {.lex_state = 0}, - [268] = {.lex_state = 0}, - [269] = {.lex_state = 0}, + [268] = {.lex_state = 12}, + [269] = {.lex_state = 12}, [270] = {.lex_state = 0}, [271] = {.lex_state = 0}, [272] = {.lex_state = 0}, - [273] = {.lex_state = 0}, + [273] = {.lex_state = 12}, [274] = {.lex_state = 0}, [275] = {.lex_state = 0}, [276] = {.lex_state = 0}, [277] = {.lex_state = 0}, - [278] = {.lex_state = 12}, + [278] = {.lex_state = 0}, [279] = {.lex_state = 0}, [280] = {.lex_state = 0}, [281] = {.lex_state = 0}, - [282] = {.lex_state = 0}, - [283] = {.lex_state = 0}, - [284] = {.lex_state = 12}, + [282] = {.lex_state = 12}, + [283] = {.lex_state = 12}, + [284] = {.lex_state = 0}, [285] = {.lex_state = 0}, - [286] = {.lex_state = 12}, - [287] = {.lex_state = 0, .external_lex_state = 10}, - [288] = {.lex_state = 12}, - [289] = {.lex_state = 0}, + [286] = {.lex_state = 0}, + [287] = {.lex_state = 0}, + [288] = {.lex_state = 0, .external_lex_state = 10}, + [289] = {.lex_state = 12}, [290] = {.lex_state = 0}, [291] = {.lex_state = 0}, - [292] = {.lex_state = 0, .external_lex_state = 10}, - [293] = {.lex_state = 12}, - [294] = {.lex_state = 12}, - [295] = {.lex_state = 13, .external_lex_state = 2}, - [296] = {.lex_state = 0}, - [297] = {.lex_state = 0}, - [298] = {.lex_state = 0, .external_lex_state = 10}, - [299] = {.lex_state = 12}, - [300] = {.lex_state = 0, .external_lex_state = 10}, + [292] = {.lex_state = 0}, + [293] = {.lex_state = 13, .external_lex_state = 2}, + [294] = {.lex_state = 0}, + [295] = {.lex_state = 0}, + [296] = {.lex_state = 12}, + [297] = {.lex_state = 0, .external_lex_state = 10}, + [298] = {.lex_state = 12}, + [299] = {.lex_state = 0, .external_lex_state = 10}, + [300] = {.lex_state = 12}, [301] = {.lex_state = 12}, - [302] = {.lex_state = 12}, - [303] = {.lex_state = 0, .external_lex_state = 10}, + [302] = {.lex_state = 0, .external_lex_state = 10}, + [303] = {.lex_state = 12}, [304] = {.lex_state = 12}, [305] = {.lex_state = 12}, - [306] = {.lex_state = 0}, + [306] = {.lex_state = 0, .external_lex_state = 10}, [307] = {.lex_state = 0}, - [308] = {.lex_state = 0, .external_lex_state = 11}, + [308] = {.lex_state = 0}, [309] = {.lex_state = 0}, - [310] = {.lex_state = 0}, + [310] = {.lex_state = 0, .external_lex_state = 2}, [311] = {.lex_state = 12}, - [312] = {.lex_state = 12}, + [312] = {.lex_state = 0}, [313] = {.lex_state = 0}, - [314] = {.lex_state = 0}, - [315] = {.lex_state = 0}, + [314] = {.lex_state = 0, .external_lex_state = 2}, + [315] = {.lex_state = 12}, [316] = {.lex_state = 0}, - [317] = {.lex_state = 0, .external_lex_state = 11}, + [317] = {.lex_state = 0}, [318] = {.lex_state = 0, .external_lex_state = 11}, - [319] = {.lex_state = 0}, + [319] = {.lex_state = 0, .external_lex_state = 11}, [320] = {.lex_state = 0}, [321] = {.lex_state = 0}, [322] = {.lex_state = 0}, [323] = {.lex_state = 0}, [324] = {.lex_state = 0}, [325] = {.lex_state = 0}, - [326] = {.lex_state = 0, .external_lex_state = 2}, + [326] = {.lex_state = 0}, [327] = {.lex_state = 0}, - [328] = {.lex_state = 0, .external_lex_state = 2}, - [329] = {.lex_state = 0, .external_lex_state = 2}, - [330] = {.lex_state = 0, .external_lex_state = 11}, - [331] = {.lex_state = 0}, - [332] = {.lex_state = 0, .external_lex_state = 2}, - [333] = {.lex_state = 0, .external_lex_state = 2}, - [334] = {.lex_state = 12}, - [335] = {.lex_state = 0}, + [328] = {.lex_state = 0}, + [329] = {.lex_state = 0}, + [330] = {.lex_state = 12}, + [331] = {.lex_state = 0, .external_lex_state = 11}, + [332] = {.lex_state = 0}, + [333] = {.lex_state = 0}, + [334] = {.lex_state = 0}, + [335] = {.lex_state = 0, .external_lex_state = 2}, [336] = {.lex_state = 0}, [337] = {.lex_state = 0}, [338] = {.lex_state = 0}, [339] = {.lex_state = 0}, [340] = {.lex_state = 0, .external_lex_state = 2}, [341] = {.lex_state = 0}, - [342] = {.lex_state = 0, .external_lex_state = 2}, + [342] = {.lex_state = 0, .external_lex_state = 11}, [343] = {.lex_state = 0}, [344] = {.lex_state = 0}, - [345] = {.lex_state = 0, .external_lex_state = 11}, - [346] = {.lex_state = 0}, - [347] = {.lex_state = 0}, + [345] = {.lex_state = 0}, + [346] = {.lex_state = 0, .external_lex_state = 11}, + [347] = {.lex_state = 0, .external_lex_state = 2}, [348] = {.lex_state = 0}, - [349] = {.lex_state = 0, .external_lex_state = 2}, - [350] = {.lex_state = 0}, - [351] = {.lex_state = 0}, - [352] = {.lex_state = 0, .external_lex_state = 2}, + [349] = {.lex_state = 0}, + [350] = {.lex_state = 0, .external_lex_state = 2}, + [351] = {.lex_state = 0, .external_lex_state = 2}, + [352] = {.lex_state = 0}, [353] = {.lex_state = 0, .external_lex_state = 2}, [354] = {.lex_state = 0}, [355] = {.lex_state = 0}, - [356] = {.lex_state = 0}, + [356] = {.lex_state = 0, .external_lex_state = 2}, [357] = {.lex_state = 0}, - [358] = {.lex_state = 0}, + [358] = {.lex_state = 0, .external_lex_state = 2}, [359] = {.lex_state = 0}, [360] = {.lex_state = 0}, [361] = {.lex_state = 0}, + [362] = {.lex_state = 0}, }; enum { ts_external_token__indent = 0, ts_external_token__dedent = 1, ts_external_token__newline = 2, - ts_external_token_string_start = 3, - ts_external_token_string_end = 4, - ts_external_token_string_body = 5, - ts_external_token_raw_string_start = 6, - ts_external_token_raw_string_end = 7, - ts_external_token_command_start = 8, - ts_external_token_command_end = 9, + ts_external_token__string_start = 3, + ts_external_token__string_end = 4, + ts_external_token__string_body = 5, + ts_external_token__raw_string_start = 6, + ts_external_token__raw_string_end = 7, + ts_external_token__command_start = 8, + ts_external_token__command_end = 9, }; static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { [ts_external_token__indent] = sym__indent, [ts_external_token__dedent] = sym__dedent, [ts_external_token__newline] = sym__newline, - [ts_external_token_string_start] = sym_string_start, - [ts_external_token_string_end] = sym_string_end, - [ts_external_token_string_body] = sym_string_body, - [ts_external_token_raw_string_start] = sym_raw_string_start, - [ts_external_token_raw_string_end] = sym_raw_string_end, - [ts_external_token_command_start] = sym_command_start, - [ts_external_token_command_end] = sym_command_end, + [ts_external_token__string_start] = sym__string_start, + [ts_external_token__string_end] = sym__string_end, + [ts_external_token__string_body] = sym__string_body, + [ts_external_token__raw_string_start] = sym__raw_string_start, + [ts_external_token__raw_string_end] = sym__raw_string_end, + [ts_external_token__command_start] = sym__command_start, + [ts_external_token__command_end] = sym__command_end, }; static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { @@ -2289,26 +2298,26 @@ static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { [ts_external_token__indent] = true, [ts_external_token__dedent] = true, [ts_external_token__newline] = true, - [ts_external_token_string_start] = true, - [ts_external_token_string_end] = true, - [ts_external_token_string_body] = true, - [ts_external_token_raw_string_start] = true, - [ts_external_token_raw_string_end] = true, - [ts_external_token_command_start] = true, - [ts_external_token_command_end] = true, + [ts_external_token__string_start] = true, + [ts_external_token__string_end] = true, + [ts_external_token__string_body] = true, + [ts_external_token__raw_string_start] = true, + [ts_external_token__raw_string_end] = true, + [ts_external_token__command_start] = true, + [ts_external_token__command_end] = true, }, [2] = { [ts_external_token__newline] = true, }, [3] = { - [ts_external_token_string_start] = true, - [ts_external_token_raw_string_start] = true, - [ts_external_token_command_start] = true, + [ts_external_token__string_start] = true, + [ts_external_token__raw_string_start] = true, + [ts_external_token__command_start] = true, }, [4] = { [ts_external_token__newline] = true, - [ts_external_token_string_start] = true, - [ts_external_token_raw_string_start] = true, + [ts_external_token__string_start] = true, + [ts_external_token__raw_string_start] = true, }, [5] = { [ts_external_token__dedent] = true, @@ -2319,23 +2328,23 @@ static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { [ts_external_token__newline] = true, }, [7] = { - [ts_external_token_string_start] = true, - [ts_external_token_raw_string_start] = true, + [ts_external_token__string_start] = true, + [ts_external_token__raw_string_start] = true, }, [8] = { - [ts_external_token_string_body] = true, - [ts_external_token_command_end] = true, + [ts_external_token__string_body] = true, + [ts_external_token__command_end] = true, }, [9] = { - [ts_external_token_string_end] = true, - [ts_external_token_string_body] = true, + [ts_external_token__string_end] = true, + [ts_external_token__string_body] = true, }, [10] = { - [ts_external_token_string_body] = true, - [ts_external_token_raw_string_end] = true, + [ts_external_token__string_body] = true, + [ts_external_token__raw_string_end] = true, }, [11] = { - [ts_external_token_raw_string_end] = true, + [ts_external_token__raw_string_end] = true, }, }; @@ -2383,31 +2392,31 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__indent] = ACTIONS(1), [sym__dedent] = ACTIONS(1), [sym__newline] = ACTIONS(1), - [sym_string_start] = ACTIONS(1), - [sym_string_end] = ACTIONS(1), - [sym_string_body] = ACTIONS(1), - [sym_raw_string_start] = ACTIONS(1), - [sym_raw_string_end] = ACTIONS(1), - [sym_command_start] = ACTIONS(1), - [sym_command_end] = ACTIONS(1), + [sym__string_start] = ACTIONS(1), + [sym__string_end] = ACTIONS(1), + [sym__string_body] = ACTIONS(1), + [sym__raw_string_start] = ACTIONS(1), + [sym__raw_string_end] = ACTIONS(1), + [sym__command_start] = ACTIONS(1), + [sym__command_end] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(350), + [sym_source_file] = STATE(349), [sym_item] = STATE(5), - [sym_eol] = STATE(72), - [sym_alias] = STATE(72), - [sym_assignment] = STATE(72), - [sym_export] = STATE(72), - [sym_import] = STATE(72), - [sym_module] = STATE(72), - [sym_setting] = STATE(72), - [sym_attribute] = STATE(157), - [sym_recipe] = STATE(72), - [sym_recipe_header] = STATE(349), + [sym_eol] = STATE(75), + [sym_alias] = STATE(75), + [sym_assignment] = STATE(75), + [sym_export] = STATE(75), + [sym_import] = STATE(75), + [sym_module] = STATE(75), + [sym_setting] = STATE(75), + [sym_attribute] = STATE(156), + [sym_recipe] = STATE(75), + [sym_recipe_header] = STATE(347), [sym_shebang] = STATE(4), - [sym_comment] = STATE(78), + [sym_comment] = STATE(77), [aux_sym_source_file_repeat1] = STATE(5), - [aux_sym_recipe_repeat1] = STATE(157), + [aux_sym_recipe_repeat1] = STATE(156), [ts_builtin_sym_end] = ACTIONS(3), [sym_identifier] = ACTIONS(5), [anon_sym_alias] = ACTIONS(7), @@ -2447,17 +2456,17 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_comment_token1, ACTIONS(56), 1, sym__newline, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(349), 1, + STATE(347), 1, sym_recipe_header, STATE(2), 2, sym_item, aux_sym_source_file_repeat1, - STATE(157), 2, + STATE(156), 2, sym_attribute, aux_sym_recipe_repeat1, - STATE(72), 8, + STATE(75), 8, sym_eol, sym_alias, sym_assignment, @@ -2489,17 +2498,17 @@ static const uint16_t ts_small_parse_table[] = { ts_builtin_sym_end, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(349), 1, + STATE(347), 1, sym_recipe_header, STATE(2), 2, sym_item, aux_sym_source_file_repeat1, - STATE(157), 2, + STATE(156), 2, sym_attribute, aux_sym_recipe_repeat1, - STATE(72), 8, + STATE(75), 8, sym_eol, sym_alias, sym_assignment, @@ -2531,17 +2540,17 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_comment_token1, ACTIONS(63), 1, ts_builtin_sym_end, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(349), 1, + STATE(347), 1, sym_recipe_header, STATE(3), 2, sym_item, aux_sym_source_file_repeat1, - STATE(157), 2, + STATE(156), 2, sym_attribute, aux_sym_recipe_repeat1, - STATE(72), 8, + STATE(75), 8, sym_eol, sym_alias, sym_assignment, @@ -2573,17 +2582,17 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_comment_token1, ACTIONS(63), 1, ts_builtin_sym_end, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(349), 1, + STATE(347), 1, sym_recipe_header, STATE(2), 2, sym_item, aux_sym_source_file_repeat1, - STATE(157), 2, + STATE(156), 2, sym_attribute, aux_sym_recipe_repeat1, - STATE(72), 8, + STATE(75), 8, sym_eol, sym_alias, sym_assignment, @@ -2604,21 +2613,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(73), 1, anon_sym_RPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(255), 1, + STATE(267), 1, sym_expression, - STATE(337), 1, + STATE(312), 1, sym_sequence, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2634,23 +2643,23 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, + sym__command_start, ACTIONS(81), 1, anon_sym_RPAREN, - STATE(116), 1, + STATE(126), 1, sym__expression_inner, - STATE(255), 1, + STATE(267), 1, sym_expression, - STATE(331), 1, + STATE(317), 1, sym_sequence, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2668,21 +2677,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(91), 1, anon_sym_RPAREN, ACTIONS(93), 1, - sym_string_start, + sym__string_start, ACTIONS(95), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(97), 1, - sym_command_start, + sym__command_start, STATE(9), 1, aux_sym_dependency_expression_repeat1, - STATE(115), 1, + STATE(136), 1, sym__expression_inner, - STATE(149), 1, + STATE(148), 1, sym_expression, - STATE(128), 2, + STATE(135), 2, sym_if_expression, sym_value, - STATE(131), 5, + STATE(134), 5, sym_function_call, sym__string, sym_string_literal, @@ -2698,23 +2707,23 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(89), 1, anon_sym_LPAREN, ACTIONS(93), 1, - sym_string_start, + sym__string_start, ACTIONS(95), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(97), 1, - sym_command_start, + sym__command_start, ACTIONS(99), 1, anon_sym_RPAREN, STATE(10), 1, aux_sym_dependency_expression_repeat1, - STATE(115), 1, + STATE(136), 1, sym__expression_inner, - STATE(149), 1, + STATE(148), 1, sym_expression, - STATE(128), 2, + STATE(135), 2, sym_if_expression, sym_value, - STATE(131), 5, + STATE(134), 5, sym_function_call, sym__string, sym_string_literal, @@ -2732,21 +2741,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(113), 1, anon_sym_RPAREN, ACTIONS(115), 1, - sym_string_start, + sym__string_start, ACTIONS(118), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(121), 1, - sym_command_start, + sym__command_start, STATE(10), 1, aux_sym_dependency_expression_repeat1, - STATE(115), 1, + STATE(136), 1, sym__expression_inner, - STATE(149), 1, + STATE(148), 1, sym_expression, - STATE(128), 2, + STATE(135), 2, sym_if_expression, sym_value, - STATE(131), 5, + STATE(134), 5, sym_function_call, sym__string, sym_string_literal, @@ -2762,23 +2771,23 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, + sym__command_start, ACTIONS(124), 1, anon_sym_RPAREN, - STATE(116), 1, + STATE(126), 1, sym__expression_inner, - STATE(255), 1, + STATE(267), 1, sym_expression, - STATE(313), 1, + STATE(338), 1, sym_sequence, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2794,21 +2803,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(305), 1, + STATE(300), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2824,21 +2833,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(293), 1, + STATE(298), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2854,21 +2863,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(294), 1, + STATE(301), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2884,21 +2893,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(299), 1, + STATE(303), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2914,21 +2923,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(302), 1, + STATE(304), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2944,21 +2953,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(301), 1, + STATE(289), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -2974,21 +2983,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(288), 1, + STATE(305), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -3004,21 +3013,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(221), 1, + STATE(223), 1, sym_expression, - STATE(304), 1, + STATE(296), 1, sym_condition, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -3034,42 +3043,42 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(132), 1, anon_sym_LPAREN, ACTIONS(134), 1, - sym_string_start, + sym__string_start, ACTIONS(136), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(138), 1, - sym_command_start, - STATE(246), 1, + sym__command_start, + STATE(270), 1, sym__expression_inner, - STATE(247), 1, + STATE(332), 1, sym_expression, - STATE(245), 2, + STATE(271), 2, sym_if_expression, sym_value, - STATE(244), 5, + STATE(272), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, [877] = 11, - ACTIONS(140), 1, + ACTIONS(126), 1, sym_identifier, - ACTIONS(142), 1, + ACTIONS(128), 1, anon_sym_SLASH, - ACTIONS(144), 1, + ACTIONS(130), 1, anon_sym_if, - ACTIONS(146), 1, + ACTIONS(132), 1, anon_sym_LPAREN, - ACTIONS(148), 1, - sym_string_start, - ACTIONS(150), 1, - sym_raw_string_start, - ACTIONS(152), 1, - sym_command_start, + ACTIONS(134), 1, + sym__string_start, + ACTIONS(136), 1, + sym__raw_string_start, + ACTIONS(138), 1, + sym__command_start, STATE(270), 1, sym__expression_inner, - STATE(314), 1, + STATE(339), 1, sym_expression, STATE(271), 2, sym_if_expression, @@ -3080,7 +3089,29 @@ static const uint16_t ts_small_parse_table[] = { sym_string_literal, sym_raw_string_literal, sym_external_command, - [916] = 11, + [916] = 5, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + STATE(100), 3, + sym__string, + sym_string_literal, + sym_raw_string_literal, + ACTIONS(140), 5, + sym__newline, + ts_builtin_sym_end, + anon_sym_LBRACK, + anon_sym_AT, + aux_sym_comment_token1, + ACTIONS(142), 6, + anon_sym_alias, + anon_sym_export, + anon_sym_import, + anon_sym_mod, + anon_sym_set, + sym_identifier, + [943] = 11, ACTIONS(65), 1, sym_identifier, ACTIONS(67), 1, @@ -3090,97 +3121,75 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(310), 1, + STATE(330), 1, sym_expression, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [955] = 11, - ACTIONS(140), 1, + [982] = 11, + ACTIONS(65), 1, sym_identifier, - ACTIONS(142), 1, + ACTIONS(67), 1, anon_sym_SLASH, - ACTIONS(144), 1, + ACTIONS(69), 1, anon_sym_if, - ACTIONS(146), 1, + ACTIONS(71), 1, anon_sym_LPAREN, - ACTIONS(148), 1, - sym_string_start, - ACTIONS(150), 1, - sym_raw_string_start, - ACTIONS(152), 1, - sym_command_start, - STATE(270), 1, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(79), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(327), 1, + STATE(315), 1, sym_expression, - STATE(271), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(272), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [994] = 5, - ACTIONS(134), 1, - sym_string_start, - ACTIONS(136), 1, - sym_raw_string_start, - STATE(93), 3, - sym__string, - sym_string_literal, - sym_raw_string_literal, - ACTIONS(154), 5, - sym__newline, - ts_builtin_sym_end, - anon_sym_LBRACK, - anon_sym_AT, - aux_sym_comment_token1, - ACTIONS(156), 6, - anon_sym_alias, - anon_sym_export, - anon_sym_import, - anon_sym_mod, - anon_sym_set, - sym_identifier, [1021] = 11, - ACTIONS(65), 1, + ACTIONS(126), 1, sym_identifier, - ACTIONS(67), 1, + ACTIONS(128), 1, anon_sym_SLASH, - ACTIONS(69), 1, + ACTIONS(130), 1, anon_sym_if, - ACTIONS(71), 1, + ACTIONS(132), 1, anon_sym_LPAREN, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + ACTIONS(134), 1, + sym__string_start, + ACTIONS(136), 1, + sym__raw_string_start, + ACTIONS(138), 1, + sym__command_start, + STATE(270), 1, sym__expression_inner, - STATE(311), 1, + STATE(313), 1, sym_expression, - STATE(117), 2, + STATE(271), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(272), 5, sym_function_call, sym__string, sym_string_literal, @@ -3196,40 +3205,40 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(335), 1, + STATE(344), 1, sym_expression, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, [1099] = 5, - ACTIONS(134), 1, - sym_string_start, - ACTIONS(136), 1, - sym_raw_string_start, - STATE(95), 3, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + STATE(88), 3, sym__string, sym_string_literal, sym_raw_string_literal, - ACTIONS(158), 5, + ACTIONS(148), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(160), 6, + ACTIONS(150), 6, anon_sym_alias, anon_sym_export, anon_sym_import, @@ -3237,28 +3246,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_set, sym_identifier, [1126] = 11, - ACTIONS(140), 1, + ACTIONS(65), 1, sym_identifier, - ACTIONS(142), 1, + ACTIONS(67), 1, anon_sym_SLASH, - ACTIONS(144), 1, + ACTIONS(69), 1, anon_sym_if, - ACTIONS(146), 1, + ACTIONS(71), 1, anon_sym_LPAREN, - ACTIONS(148), 1, - sym_string_start, - ACTIONS(150), 1, - sym_raw_string_start, - ACTIONS(152), 1, - sym_command_start, - STATE(270), 1, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(79), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(323), 1, + STATE(336), 1, sym_expression, - STATE(271), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(272), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -3274,47 +3283,47 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(334), 1, + STATE(290), 1, sym_expression, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, [1204] = 11, - ACTIONS(65), 1, + ACTIONS(126), 1, sym_identifier, - ACTIONS(67), 1, + ACTIONS(128), 1, anon_sym_SLASH, - ACTIONS(69), 1, + ACTIONS(130), 1, anon_sym_if, - ACTIONS(71), 1, + ACTIONS(132), 1, anon_sym_LPAREN, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + ACTIONS(134), 1, + sym__string_start, + ACTIONS(136), 1, + sym__raw_string_start, + ACTIONS(138), 1, + sym__command_start, + STATE(270), 1, sym__expression_inner, - STATE(297), 1, + STATE(324), 1, sym_expression, - STATE(117), 2, + STATE(271), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(272), 5, sym_function_call, sym__string, sym_string_literal, @@ -3330,19 +3339,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(320), 1, + STATE(311), 1, sym_expression, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, @@ -3358,75 +3367,75 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(312), 1, + STATE(309), 1, sym_expression, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, [1321] = 11, - ACTIONS(140), 1, + ACTIONS(65), 1, sym_identifier, - ACTIONS(142), 1, + ACTIONS(67), 1, anon_sym_SLASH, - ACTIONS(144), 1, + ACTIONS(69), 1, anon_sym_if, - ACTIONS(146), 1, + ACTIONS(71), 1, anon_sym_LPAREN, - ACTIONS(148), 1, - sym_string_start, - ACTIONS(150), 1, - sym_raw_string_start, - ACTIONS(152), 1, - sym_command_start, - STATE(270), 1, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(79), 1, + sym__command_start, + STATE(126), 1, sym__expression_inner, - STATE(338), 1, + STATE(322), 1, sym_expression, - STATE(271), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(272), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, [1360] = 11, - ACTIONS(65), 1, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + ACTIONS(152), 1, sym_identifier, - ACTIONS(67), 1, + ACTIONS(154), 1, anon_sym_SLASH, - ACTIONS(69), 1, + ACTIONS(156), 1, anon_sym_if, - ACTIONS(71), 1, + ACTIONS(158), 1, anon_sym_LPAREN, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(79), 1, - sym_command_start, - STATE(116), 1, - sym__expression_inner, - STATE(321), 1, + ACTIONS(160), 1, + sym__command_start, + STATE(218), 1, sym_expression, - STATE(117), 2, + STATE(221), 1, + sym__expression_inner, + STATE(232), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(233), 5, sym_function_call, sym__string, sym_string_literal, @@ -3443,14 +3452,14 @@ static const uint16_t ts_small_parse_table[] = { sym__dedent, ACTIONS(172), 1, sym__newline, - STATE(53), 1, + STATE(57), 1, sym_shebang, - STATE(182), 1, + STATE(191), 1, sym_recipe_line_prefix, - STATE(61), 2, + STATE(62), 2, sym_recipe_line, aux_sym_recipe_body_repeat1, - STATE(179), 2, + STATE(194), 2, sym_interpolation, aux_sym_recipe_line_repeat1, ACTIONS(162), 4, @@ -3458,79 +3467,96 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AT_DASH, anon_sym_DASH_AT, anon_sym_DASH, - [1435] = 9, - ACTIONS(140), 1, + [1435] = 1, + ACTIONS(174), 14, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_DOLLAR, + anon_sym_STAR, + anon_sym_RBRACE_RBRACE, sym_identifier, + [1452] = 9, ACTIONS(144), 1, - anon_sym_if, + sym__string_start, ACTIONS(146), 1, - anon_sym_LPAREN, - ACTIONS(148), 1, - sym_string_start, - ACTIONS(150), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(152), 1, - sym_command_start, - STATE(283), 1, + sym_identifier, + ACTIONS(156), 1, + anon_sym_if, + ACTIONS(158), 1, + anon_sym_LPAREN, + ACTIONS(160), 1, + sym__command_start, + STATE(239), 1, sym__expression_inner, - STATE(271), 2, + STATE(232), 2, sym_if_expression, sym_value, - STATE(272), 5, + STATE(233), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1468] = 9, - ACTIONS(83), 1, - sym_identifier, - ACTIONS(87), 1, - anon_sym_if, - ACTIONS(89), 1, + [1485] = 2, + ACTIONS(178), 1, anon_sym_LPAREN, - ACTIONS(93), 1, - sym_string_start, - ACTIONS(95), 1, - sym_raw_string_start, - ACTIONS(97), 1, - sym_command_start, - STATE(120), 1, - sym__expression_inner, - STATE(128), 2, - sym_if_expression, - sym_value, - STATE(131), 5, - sym_function_call, - sym__string, - sym_string_literal, - sym_raw_string_literal, - sym_external_command, - [1501] = 9, - ACTIONS(126), 1, + ACTIONS(176), 13, + anon_sym_COMMA, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_DOLLAR, + anon_sym_STAR, + anon_sym_RBRACE_RBRACE, sym_identifier, - ACTIONS(130), 1, - anon_sym_if, - ACTIONS(132), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_string_start, - ACTIONS(136), 1, - sym_raw_string_start, - ACTIONS(138), 1, - sym_command_start, - STATE(215), 1, - sym__expression_inner, - STATE(245), 2, - sym_if_expression, - sym_value, - STATE(244), 5, - sym_function_call, - sym__string, - sym_string_literal, - sym_raw_string_literal, - sym_external_command, - [1534] = 9, + [1504] = 1, + ACTIONS(180), 14, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_DOLLAR, + anon_sym_STAR, + anon_sym_RBRACE_RBRACE, + sym_identifier, + [1521] = 1, + ACTIONS(182), 14, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_DOLLAR, + anon_sym_STAR, + anon_sym_RBRACE_RBRACE, + sym_identifier, + [1538] = 9, ACTIONS(126), 1, sym_identifier, ACTIONS(130), 1, @@ -3538,48 +3564,48 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(132), 1, anon_sym_LPAREN, ACTIONS(134), 1, - sym_string_start, + sym__string_start, ACTIONS(136), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(138), 1, - sym_command_start, - STATE(213), 1, + sym__command_start, + STATE(266), 1, sym__expression_inner, - STATE(245), 2, + STATE(271), 2, sym_if_expression, sym_value, - STATE(244), 5, + STATE(272), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1567] = 9, - ACTIONS(140), 1, + [1571] = 9, + ACTIONS(83), 1, sym_identifier, - ACTIONS(144), 1, + ACTIONS(87), 1, anon_sym_if, - ACTIONS(146), 1, + ACTIONS(89), 1, anon_sym_LPAREN, - ACTIONS(148), 1, - sym_string_start, - ACTIONS(150), 1, - sym_raw_string_start, - ACTIONS(152), 1, - sym_command_start, - STATE(276), 1, + ACTIONS(93), 1, + sym__string_start, + ACTIONS(95), 1, + sym__raw_string_start, + ACTIONS(97), 1, + sym__command_start, + STATE(132), 1, sym__expression_inner, - STATE(271), 2, + STATE(135), 2, sym_if_expression, sym_value, - STATE(272), 5, + STATE(134), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1600] = 1, - ACTIONS(174), 14, + [1604] = 1, + ACTIONS(184), 14, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_SLASH, @@ -3594,7 +3620,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_RBRACE_RBRACE, sym_identifier, - [1617] = 9, + [1621] = 9, ACTIONS(126), 1, sym_identifier, ACTIONS(130), 1, @@ -3602,71 +3628,71 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(132), 1, anon_sym_LPAREN, ACTIONS(134), 1, - sym_string_start, + sym__string_start, ACTIONS(136), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(138), 1, - sym_command_start, - STATE(224), 1, + sym__command_start, + STATE(276), 1, sym__expression_inner, - STATE(245), 2, + STATE(271), 2, sym_if_expression, sym_value, - STATE(244), 5, + STATE(272), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1650] = 9, - ACTIONS(83), 1, + [1654] = 9, + ACTIONS(65), 1, sym_identifier, - ACTIONS(87), 1, + ACTIONS(69), 1, anon_sym_if, - ACTIONS(89), 1, + ACTIONS(71), 1, anon_sym_LPAREN, - ACTIONS(93), 1, - sym_string_start, - ACTIONS(95), 1, - sym_raw_string_start, - ACTIONS(97), 1, - sym_command_start, - STATE(118), 1, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(79), 1, + sym__command_start, + STATE(131), 1, sym__expression_inner, - STATE(128), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(131), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1683] = 9, - ACTIONS(140), 1, + [1687] = 9, + ACTIONS(65), 1, sym_identifier, - ACTIONS(144), 1, + ACTIONS(69), 1, anon_sym_if, - ACTIONS(146), 1, + ACTIONS(71), 1, anon_sym_LPAREN, - ACTIONS(148), 1, - sym_string_start, - ACTIONS(150), 1, - sym_raw_string_start, - ACTIONS(152), 1, - sym_command_start, - STATE(282), 1, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(79), 1, + sym__command_start, + STATE(127), 1, sym__expression_inner, - STATE(271), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(272), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1716] = 9, + [1720] = 9, ACTIONS(65), 1, sym_identifier, ACTIONS(69), 1, @@ -3674,136 +3700,71 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(79), 1, - sym_command_start, - STATE(134), 1, + sym__command_start, + STATE(128), 1, sym__expression_inner, - STATE(117), 2, + STATE(137), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(64), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1749] = 1, - ACTIONS(176), 14, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_DOLLAR, - anon_sym_STAR, - anon_sym_RBRACE_RBRACE, - sym_identifier, - [1766] = 2, - ACTIONS(180), 1, - anon_sym_LPAREN, - ACTIONS(178), 13, - anon_sym_COMMA, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_DOLLAR, - anon_sym_STAR, - anon_sym_RBRACE_RBRACE, - sym_identifier, - [1785] = 9, - ACTIONS(65), 1, + [1753] = 9, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + ACTIONS(152), 1, sym_identifier, - ACTIONS(69), 1, + ACTIONS(156), 1, anon_sym_if, - ACTIONS(71), 1, + ACTIONS(158), 1, anon_sym_LPAREN, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(79), 1, - sym_command_start, - STATE(122), 1, + ACTIONS(160), 1, + sym__command_start, + STATE(222), 1, sym__expression_inner, - STATE(117), 2, + STATE(232), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(233), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1818] = 1, - ACTIONS(182), 14, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_DOLLAR, - anon_sym_STAR, - anon_sym_RBRACE_RBRACE, - sym_identifier, - [1835] = 1, - ACTIONS(184), 14, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_DOLLAR, - anon_sym_STAR, - anon_sym_RBRACE_RBRACE, - sym_identifier, - [1852] = 9, - ACTIONS(65), 1, + [1786] = 9, + ACTIONS(83), 1, sym_identifier, - ACTIONS(69), 1, + ACTIONS(87), 1, anon_sym_if, - ACTIONS(71), 1, + ACTIONS(89), 1, anon_sym_LPAREN, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(79), 1, - sym_command_start, - STATE(133), 1, + ACTIONS(93), 1, + sym__string_start, + ACTIONS(95), 1, + sym__raw_string_start, + ACTIONS(97), 1, + sym__command_start, + STATE(116), 1, sym__expression_inner, - STATE(117), 2, + STATE(135), 2, sym_if_expression, sym_value, - STATE(62), 5, + STATE(134), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1885] = 9, + [1819] = 9, ACTIONS(83), 1, sym_identifier, ACTIONS(87), 1, @@ -3811,109 +3772,72 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(89), 1, anon_sym_LPAREN, ACTIONS(93), 1, - sym_string_start, + sym__string_start, ACTIONS(95), 1, - sym_raw_string_start, + sym__raw_string_start, ACTIONS(97), 1, - sym_command_start, - STATE(110), 1, + sym__command_start, + STATE(115), 1, sym__expression_inner, - STATE(128), 2, + STATE(135), 2, sym_if_expression, sym_value, - STATE(131), 5, + STATE(134), 5, sym_function_call, sym__string, sym_string_literal, sym_raw_string_literal, sym_external_command, - [1918] = 8, - ACTIONS(166), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(168), 1, - sym_text, - ACTIONS(172), 1, - sym__newline, - ACTIONS(186), 1, - sym__dedent, - STATE(182), 1, - sym_recipe_line_prefix, - STATE(66), 2, - sym_recipe_line, - aux_sym_recipe_body_repeat1, - STATE(179), 2, - sym_interpolation, - aux_sym_recipe_line_repeat1, - ACTIONS(162), 4, - anon_sym_AT, - anon_sym_AT_DASH, - anon_sym_DASH_AT, - anon_sym_DASH, - [1948] = 2, - ACTIONS(188), 6, - anon_sym_alias, - anon_sym_export, - anon_sym_import, - anon_sym_mod, - anon_sym_set, - sym_identifier, - ACTIONS(174), 7, - sym__newline, - ts_builtin_sym_end, - anon_sym_LBRACK, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_AT, - aux_sym_comment_token1, - [1966] = 1, - ACTIONS(190), 13, - anon_sym_COMMA, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_DOLLAR, - anon_sym_STAR, - anon_sym_RBRACE_RBRACE, - sym_identifier, - [1982] = 2, - ACTIONS(192), 6, - anon_sym_alias, - anon_sym_export, - anon_sym_import, - anon_sym_mod, - anon_sym_set, + [1852] = 9, + ACTIONS(126), 1, sym_identifier, - ACTIONS(176), 7, - sym__newline, - ts_builtin_sym_end, - anon_sym_LBRACK, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_AT, - aux_sym_comment_token1, - [2000] = 2, - ACTIONS(194), 6, - anon_sym_alias, - anon_sym_export, - anon_sym_import, - anon_sym_mod, - anon_sym_set, + ACTIONS(130), 1, + anon_sym_if, + ACTIONS(132), 1, + anon_sym_LPAREN, + ACTIONS(134), 1, + sym__string_start, + ACTIONS(136), 1, + sym__raw_string_start, + ACTIONS(138), 1, + sym__command_start, + STATE(281), 1, + sym__expression_inner, + STATE(271), 2, + sym_if_expression, + sym_value, + STATE(272), 5, + sym_function_call, + sym__string, + sym_string_literal, + sym_raw_string_literal, + sym_external_command, + [1885] = 9, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + ACTIONS(152), 1, sym_identifier, - ACTIONS(184), 7, - sym__newline, - ts_builtin_sym_end, - anon_sym_LBRACK, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_AT, - aux_sym_comment_token1, - [2018] = 1, - ACTIONS(196), 13, + ACTIONS(156), 1, + anon_sym_if, + ACTIONS(158), 1, + anon_sym_LPAREN, + ACTIONS(160), 1, + sym__command_start, + STATE(240), 1, + sym__expression_inner, + STATE(232), 2, + sym_if_expression, + sym_value, + STATE(233), 5, + sym_function_call, + sym__string, + sym_string_literal, + sym_raw_string_literal, + sym_external_command, + [1918] = 1, + ACTIONS(186), 13, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -3927,8 +3851,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_RBRACE_RBRACE, sym_identifier, - [2034] = 2, - ACTIONS(198), 6, + [1934] = 2, + ACTIONS(188), 6, anon_sym_alias, anon_sym_export, anon_sym_import, @@ -3943,39 +3867,81 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS, anon_sym_AT, aux_sym_comment_token1, - [2052] = 4, - ACTIONS(204), 1, - sym__indent, - STATE(84), 1, - sym_recipe_body, - ACTIONS(200), 5, + [1952] = 8, + ACTIONS(193), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(196), 1, + sym_text, + ACTIONS(199), 1, + sym__dedent, + ACTIONS(201), 1, sym__newline, - ts_builtin_sym_end, - anon_sym_LBRACK, + STATE(191), 1, + sym_recipe_line_prefix, + STATE(55), 2, + sym_recipe_line, + aux_sym_recipe_body_repeat1, + STATE(194), 2, + sym_interpolation, + aux_sym_recipe_line_repeat1, + ACTIONS(190), 4, anon_sym_AT, - aux_sym_comment_token1, - ACTIONS(202), 6, + anon_sym_AT_DASH, + anon_sym_DASH_AT, + anon_sym_DASH, + [1982] = 2, + ACTIONS(204), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2074] = 8, + ACTIONS(184), 7, + sym__newline, + ts_builtin_sym_end, + anon_sym_LBRACK, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_AT, + aux_sym_comment_token1, + [2000] = 8, ACTIONS(166), 1, anon_sym_LBRACE_LBRACE, ACTIONS(168), 1, sym_text, ACTIONS(172), 1, sym__newline, - ACTIONS(186), 1, + ACTIONS(206), 1, sym__dedent, - STATE(182), 1, + STATE(191), 1, + sym_recipe_line_prefix, + STATE(58), 2, + sym_recipe_line, + aux_sym_recipe_body_repeat1, + STATE(194), 2, + sym_interpolation, + aux_sym_recipe_line_repeat1, + ACTIONS(162), 4, + anon_sym_AT, + anon_sym_AT_DASH, + anon_sym_DASH_AT, + anon_sym_DASH, + [2030] = 8, + ACTIONS(166), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(168), 1, + sym_text, + ACTIONS(172), 1, + sym__newline, + ACTIONS(208), 1, + sym__dedent, + STATE(191), 1, sym_recipe_line_prefix, - STATE(67), 2, + STATE(55), 2, sym_recipe_line, aux_sym_recipe_body_repeat1, - STATE(179), 2, + STATE(194), 2, sym_interpolation, aux_sym_recipe_line_repeat1, ACTIONS(162), 4, @@ -3983,8 +3949,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AT_DASH, anon_sym_DASH_AT, anon_sym_DASH, - [2104] = 1, - ACTIONS(178), 13, + [2060] = 2, + ACTIONS(210), 6, + anon_sym_alias, + anon_sym_export, + anon_sym_import, + anon_sym_mod, + anon_sym_set, + sym_identifier, + ACTIONS(180), 7, + sym__newline, + ts_builtin_sym_end, + anon_sym_LBRACK, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_AT, + aux_sym_comment_token1, + [2078] = 1, + ACTIONS(212), 13, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -3998,26 +3980,66 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_RBRACE_RBRACE, sym_identifier, - [2120] = 4, - ACTIONS(204), 1, + [2094] = 4, + ACTIONS(218), 1, sym__indent, - STATE(87), 1, + STATE(97), 1, + sym_recipe_body, + ACTIONS(214), 5, + sym__newline, + ts_builtin_sym_end, + anon_sym_LBRACK, + anon_sym_AT, + aux_sym_comment_token1, + ACTIONS(216), 6, + anon_sym_alias, + anon_sym_export, + anon_sym_import, + anon_sym_mod, + anon_sym_set, + sym_identifier, + [2116] = 8, + ACTIONS(166), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(168), 1, + sym_text, + ACTIONS(172), 1, + sym__newline, + ACTIONS(206), 1, + sym__dedent, + STATE(191), 1, + sym_recipe_line_prefix, + STATE(55), 2, + sym_recipe_line, + aux_sym_recipe_body_repeat1, + STATE(194), 2, + sym_interpolation, + aux_sym_recipe_line_repeat1, + ACTIONS(162), 4, + anon_sym_AT, + anon_sym_AT_DASH, + anon_sym_DASH_AT, + anon_sym_DASH, + [2146] = 4, + ACTIONS(218), 1, + sym__indent, + STATE(96), 1, sym_recipe_body, - ACTIONS(206), 5, + ACTIONS(220), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(208), 6, + ACTIONS(222), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2142] = 1, - ACTIONS(210), 13, + [2168] = 1, + ACTIONS(176), 13, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -4031,8 +4053,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_RBRACE_RBRACE, sym_identifier, - [2158] = 1, - ACTIONS(212), 13, + [2184] = 2, + ACTIONS(224), 6, + anon_sym_alias, + anon_sym_export, + anon_sym_import, + anon_sym_mod, + anon_sym_set, + sym_identifier, + ACTIONS(174), 7, + sym__newline, + ts_builtin_sym_end, + anon_sym_LBRACK, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_AT, + aux_sym_comment_token1, + [2202] = 1, + ACTIONS(226), 13, + anon_sym_COMMA, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_DOLLAR, + anon_sym_STAR, + anon_sym_RBRACE_RBRACE, + sym_identifier, + [2218] = 1, + ACTIONS(228), 13, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -4046,50 +4099,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_STAR, anon_sym_RBRACE_RBRACE, sym_identifier, - [2174] = 8, - ACTIONS(166), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(168), 1, - sym_text, - ACTIONS(172), 1, - sym__newline, - ACTIONS(214), 1, - sym__dedent, - STATE(182), 1, - sym_recipe_line_prefix, - STATE(67), 2, - sym_recipe_line, - aux_sym_recipe_body_repeat1, - STATE(179), 2, - sym_interpolation, - aux_sym_recipe_line_repeat1, - ACTIONS(162), 4, - anon_sym_AT, - anon_sym_AT_DASH, - anon_sym_DASH_AT, - anon_sym_DASH, - [2204] = 8, - ACTIONS(219), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(222), 1, - sym_text, - ACTIONS(225), 1, - sym__dedent, - ACTIONS(227), 1, - sym__newline, - STATE(182), 1, - sym_recipe_line_prefix, - STATE(67), 2, - sym_recipe_line, - aux_sym_recipe_body_repeat1, - STATE(179), 2, - sym_interpolation, - aux_sym_recipe_line_repeat1, - ACTIONS(216), 4, - anon_sym_AT, - anon_sym_AT_DASH, - anon_sym_DASH_AT, - anon_sym_DASH, [2234] = 1, ACTIONS(230), 13, anon_sym_COMMA, @@ -4119,93 +4128,93 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_mod, anon_sym_set, sym_identifier, - [2266] = 4, - ACTIONS(240), 1, - anon_sym_else, - STATE(103), 1, - aux_sym_if_expression_repeat1, - ACTIONS(236), 2, - anon_sym_if, - sym_identifier, - ACTIONS(238), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LPAREN, - anon_sym_RPAREN, - [2286] = 2, - ACTIONS(242), 5, + [2266] = 2, + ACTIONS(236), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(244), 6, + ACTIONS(238), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2302] = 2, - ACTIONS(246), 5, + [2282] = 2, + ACTIONS(240), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(248), 6, + ACTIONS(242), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2318] = 2, - ACTIONS(250), 5, + [2298] = 3, + ACTIONS(246), 1, + anon_sym_else, + STATE(86), 1, + aux_sym_if_expression_repeat1, + ACTIONS(244), 9, + anon_sym_COMMA, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + anon_sym_RPAREN, + anon_sym_RBRACE_RBRACE, + [2316] = 2, + ACTIONS(248), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(252), 6, + ACTIONS(250), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2334] = 2, - ACTIONS(254), 5, + [2332] = 4, + ACTIONS(256), 1, + anon_sym_else, + STATE(74), 1, + aux_sym_if_expression_repeat1, + ACTIONS(252), 2, + anon_sym_if, + sym_identifier, + ACTIONS(254), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LPAREN, + anon_sym_RPAREN, + [2352] = 2, + ACTIONS(259), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(256), 6, + ACTIONS(261), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2350] = 3, - ACTIONS(260), 1, - anon_sym_else, - STATE(75), 1, - aux_sym_if_expression_repeat1, - ACTIONS(258), 9, - anon_sym_COMMA, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_RBRACE_RBRACE, [2368] = 2, ACTIONS(263), 5, sym__newline, @@ -4248,22 +4257,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_mod, anon_sym_set, sym_identifier, - [2416] = 3, - ACTIONS(277), 1, - anon_sym_else, - STATE(75), 1, - aux_sym_if_expression_repeat1, - ACTIONS(275), 9, - anon_sym_COMMA, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_RBRACE_RBRACE, - [2434] = 2, + [2416] = 2, + ACTIONS(275), 5, + sym__newline, + ts_builtin_sym_end, + anon_sym_LBRACK, + anon_sym_AT, + aux_sym_comment_token1, + ACTIONS(277), 6, + anon_sym_alias, + anon_sym_export, + anon_sym_import, + anon_sym_mod, + anon_sym_set, + sym_identifier, + [2432] = 2, ACTIONS(279), 5, sym__newline, ts_builtin_sym_end, @@ -4277,197 +4285,183 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_mod, anon_sym_set, sym_identifier, - [2450] = 7, - ACTIONS(71), 1, - anon_sym_LPAREN, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(79), 1, - sym_command_start, - ACTIONS(283), 1, - sym_identifier, - STATE(168), 1, - sym_value, - STATE(62), 5, - sym_function_call, - sym__string, - sym_string_literal, - sym_raw_string_literal, - sym_external_command, - [2476] = 2, - ACTIONS(285), 5, - sym__newline, - ts_builtin_sym_end, - anon_sym_LBRACK, - anon_sym_AT, - aux_sym_comment_token1, - ACTIONS(287), 6, - anon_sym_alias, - anon_sym_export, - anon_sym_import, - anon_sym_mod, - anon_sym_set, - sym_identifier, - [2492] = 2, - ACTIONS(289), 5, + [2448] = 2, + ACTIONS(283), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(291), 6, + ACTIONS(285), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2508] = 2, - ACTIONS(293), 5, + [2464] = 2, + ACTIONS(287), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(295), 6, + ACTIONS(289), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2524] = 3, - ACTIONS(297), 1, + [2480] = 4, + ACTIONS(293), 1, anon_sym_else, - STATE(79), 1, + STATE(74), 1, aux_sym_if_expression_repeat1, - ACTIONS(238), 9, - anon_sym_COMMA, + ACTIONS(291), 2, + anon_sym_if, + sym_identifier, + ACTIONS(244), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, + anon_sym_LPAREN, anon_sym_RPAREN, - anon_sym_RBRACE_RBRACE, - [2542] = 2, - ACTIONS(299), 5, + [2500] = 2, + ACTIONS(295), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(301), 6, + ACTIONS(297), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2558] = 2, - ACTIONS(200), 5, + [2516] = 2, + ACTIONS(299), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(202), 6, + ACTIONS(301), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2574] = 2, - ACTIONS(303), 5, + [2532] = 3, + ACTIONS(303), 1, + anon_sym_else, + STATE(86), 1, + aux_sym_if_expression_repeat1, + ACTIONS(254), 9, + anon_sym_COMMA, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + anon_sym_RPAREN, + anon_sym_RBRACE_RBRACE, + [2550] = 2, + ACTIONS(306), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(305), 6, + ACTIONS(308), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2590] = 2, - ACTIONS(307), 5, + [2566] = 2, + ACTIONS(310), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(309), 6, + ACTIONS(312), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2606] = 4, - ACTIONS(313), 1, - anon_sym_else, - STATE(90), 1, - aux_sym_if_expression_repeat1, - ACTIONS(311), 2, - anon_sym_if, - sym_identifier, - ACTIONS(258), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LPAREN, - anon_sym_RPAREN, - [2626] = 2, - ACTIONS(316), 5, + [2582] = 2, + ACTIONS(314), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(318), 6, + ACTIONS(316), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2642] = 2, - ACTIONS(320), 5, + [2598] = 2, + ACTIONS(318), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(322), 6, + ACTIONS(320), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2658] = 2, - ACTIONS(324), 5, + [2614] = 2, + ACTIONS(322), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(326), 6, + ACTIONS(324), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2674] = 2, + [2630] = 7, + ACTIONS(71), 1, + anon_sym_LPAREN, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(79), 1, + sym__command_start, + ACTIONS(326), 1, + sym_identifier, + STATE(186), 1, + sym_value, + STATE(64), 5, + sym_function_call, + sym__string, + sym_string_literal, + sym_raw_string_literal, + sym_external_command, + [2656] = 2, ACTIONS(328), 5, sym__newline, ts_builtin_sym_end, @@ -4481,7 +4475,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_mod, anon_sym_set, sym_identifier, - [2690] = 2, + [2672] = 2, ACTIONS(332), 5, sym__newline, ts_builtin_sym_end, @@ -4495,7 +4489,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_mod, anon_sym_set, sym_identifier, - [2706] = 2, + [2688] = 2, ACTIONS(336), 5, sym__newline, ts_builtin_sym_end, @@ -4509,7 +4503,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_mod, anon_sym_set, sym_identifier, - [2722] = 2, + [2704] = 2, ACTIONS(340), 5, sym__newline, ts_builtin_sym_end, @@ -4523,139 +4517,128 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_mod, anon_sym_set, sym_identifier, - [2738] = 2, - ACTIONS(344), 5, + [2720] = 2, + ACTIONS(220), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(346), 6, + ACTIONS(222), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2754] = 7, - ACTIONS(71), 1, - anon_sym_LPAREN, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(79), 1, - sym_command_start, - ACTIONS(283), 1, - sym_identifier, - STATE(195), 1, - sym_value, - STATE(62), 5, - sym_function_call, - sym__string, - sym_string_literal, - sym_raw_string_literal, - sym_external_command, - [2780] = 2, - ACTIONS(348), 5, + [2736] = 2, + ACTIONS(344), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(350), 6, + ACTIONS(346), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2796] = 2, - ACTIONS(352), 5, + [2752] = 4, + ACTIONS(352), 1, + anon_sym_else, + STATE(83), 1, + aux_sym_if_expression_repeat1, + ACTIONS(348), 2, + anon_sym_if, + sym_identifier, + ACTIONS(350), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LPAREN, + anon_sym_RPAREN, + [2772] = 2, + ACTIONS(354), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(354), 6, + ACTIONS(356), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2812] = 2, - ACTIONS(356), 5, + [2788] = 2, + ACTIONS(358), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(358), 6, + ACTIONS(360), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2828] = 4, - ACTIONS(362), 1, - anon_sym_else, - STATE(90), 1, - aux_sym_if_expression_repeat1, - ACTIONS(360), 2, - anon_sym_if, - sym_identifier, - ACTIONS(275), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LPAREN, - anon_sym_RPAREN, - [2848] = 2, - ACTIONS(364), 5, + [2804] = 2, + ACTIONS(362), 5, sym__newline, ts_builtin_sym_end, anon_sym_LBRACK, anon_sym_AT, aux_sym_comment_token1, - ACTIONS(366), 6, + ACTIONS(364), 6, anon_sym_alias, anon_sym_export, anon_sym_import, anon_sym_mod, anon_sym_set, sym_identifier, - [2864] = 2, - ACTIONS(368), 3, - anon_sym_if, - anon_sym_else, - sym_identifier, - ACTIONS(370), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, - anon_sym_SLASH, - anon_sym_PLUS, + [2820] = 7, + ACTIONS(71), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - [2879] = 2, - ACTIONS(372), 3, - anon_sym_if, - anon_sym_else, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(79), 1, + sym__command_start, + ACTIONS(326), 1, sym_identifier, - ACTIONS(374), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + STATE(184), 1, + sym_value, + STATE(64), 5, + sym_function_call, + sym__string, + sym_string_literal, + sym_raw_string_literal, + sym_external_command, + [2846] = 3, + ACTIONS(366), 1, + anon_sym_else, + STATE(72), 1, + aux_sym_if_expression_repeat1, + ACTIONS(350), 9, + anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, - anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, anon_sym_RPAREN, - [2894] = 1, - ACTIONS(370), 10, + anon_sym_RBRACE_RBRACE, + [2864] = 1, + ACTIONS(368), 10, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -4666,8 +4649,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_TILDE, anon_sym_RPAREN, anon_sym_RBRACE_RBRACE, - [2907] = 1, - ACTIONS(374), 10, + [2877] = 2, + ACTIONS(370), 3, + anon_sym_if, + anon_sym_else, + sym_identifier, + ACTIONS(368), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LPAREN, + anon_sym_RPAREN, + [2892] = 1, + ACTIONS(372), 10, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -4678,123 +4674,168 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_TILDE, anon_sym_RPAREN, anon_sym_RBRACE_RBRACE, - [2920] = 9, - ACTIONS(376), 1, + [2905] = 9, + ACTIONS(374), 1, sym_identifier, - ACTIONS(378), 1, + ACTIONS(376), 1, anon_sym_COLON_EQ, - ACTIONS(382), 1, + ACTIONS(380), 1, anon_sym_COLON, - ACTIONS(384), 1, + ACTIONS(382), 1, anon_sym_DOLLAR, STATE(152), 1, aux_sym_parameters_repeat1, - STATE(175), 1, + STATE(182), 1, sym_parameter, - STATE(357), 1, + STATE(341), 1, sym_parameters, - STATE(360), 1, + STATE(343), 1, sym_variadic_parameter, - ACTIONS(380), 2, + ACTIONS(378), 2, anon_sym_PLUS, anon_sym_STAR, - [2949] = 4, - ACTIONS(388), 1, + [2934] = 2, + ACTIONS(384), 3, + anon_sym_if, + anon_sym_else, + sym_identifier, + ACTIONS(372), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, - ACTIONS(390), 1, anon_sym_PLUS, + anon_sym_LPAREN, + anon_sym_RPAREN, + [2949] = 2, ACTIONS(386), 2, anon_sym_if, sym_identifier, - ACTIONS(392), 5, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(226), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_SLASH, + anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [2967] = 2, - ACTIONS(394), 2, + [2963] = 2, + ACTIONS(388), 2, anon_sym_if, sym_identifier, - ACTIONS(396), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(228), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [2981] = 8, - ACTIONS(376), 1, + [2977] = 2, + ACTIONS(390), 2, + anon_sym_if, + sym_identifier, + ACTIONS(212), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_LPAREN, + anon_sym_RPAREN, + [2991] = 8, + ACTIONS(374), 1, sym_identifier, - ACTIONS(384), 1, + ACTIONS(382), 1, anon_sym_DOLLAR, - ACTIONS(398), 1, + ACTIONS(392), 1, anon_sym_COLON, STATE(152), 1, aux_sym_parameters_repeat1, - STATE(175), 1, + STATE(182), 1, sym_parameter, - STATE(357), 1, + STATE(341), 1, sym_parameters, - STATE(360), 1, + STATE(343), 1, sym_variadic_parameter, - ACTIONS(380), 2, + ACTIONS(378), 2, anon_sym_PLUS, anon_sym_STAR, - [3007] = 2, - ACTIONS(400), 2, + [3017] = 2, + ACTIONS(394), 2, anon_sym_if, sym_identifier, - ACTIONS(230), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(396), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3021] = 2, - ACTIONS(402), 2, + [3031] = 2, + ACTIONS(398), 2, anon_sym_if, sym_identifier, - ACTIONS(404), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(400), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3035] = 4, - ACTIONS(388), 1, + [3045] = 3, + ACTIONS(402), 1, + anon_sym_PLUS, + ACTIONS(398), 2, + anon_sym_if, + sym_identifier, + ACTIONS(400), 6, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_SLASH, + anon_sym_LPAREN, + anon_sym_RPAREN, + [3061] = 2, + ACTIONS(404), 2, + anon_sym_if, + sym_identifier, + ACTIONS(230), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, - ACTIONS(390), 1, anon_sym_PLUS, + anon_sym_LPAREN, + anon_sym_RPAREN, + [3075] = 2, ACTIONS(406), 2, anon_sym_if, sym_identifier, - ACTIONS(408), 5, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(408), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_SLASH, + anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3053] = 3, - ACTIONS(410), 1, + [3089] = 2, + ACTIONS(188), 2, + anon_sym_if, + sym_identifier, + ACTIONS(182), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, - ACTIONS(412), 1, anon_sym_PLUS, - ACTIONS(408), 7, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, + anon_sym_LPAREN, anon_sym_RPAREN, - anon_sym_RBRACE_RBRACE, - [3069] = 1, - ACTIONS(414), 9, + [3103] = 1, + ACTIONS(396), 9, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -4804,61 +4845,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_TILDE, anon_sym_RPAREN, anon_sym_RBRACE_RBRACE, - [3081] = 2, - ACTIONS(416), 2, + [3115] = 2, + ACTIONS(210), 2, anon_sym_if, sym_identifier, - ACTIONS(418), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(180), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3095] = 2, - ACTIONS(188), 2, + [3129] = 2, + ACTIONS(224), 2, anon_sym_if, sym_identifier, ACTIONS(174), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3109] = 3, - ACTIONS(390), 1, - anon_sym_PLUS, - ACTIONS(416), 2, + [3143] = 2, + ACTIONS(410), 2, anon_sym_if, sym_identifier, - ACTIONS(418), 6, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(176), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, + anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3125] = 2, - ACTIONS(420), 2, - anon_sym_if, + [3157] = 8, + ACTIONS(374), 1, sym_identifier, - ACTIONS(212), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(382), 1, + anon_sym_DOLLAR, + ACTIONS(412), 1, + anon_sym_COLON, + STATE(152), 1, + aux_sym_parameters_repeat1, + STATE(182), 1, + sym_parameter, + STATE(337), 1, + sym_parameters, + STATE(343), 1, + sym_variadic_parameter, + ACTIONS(378), 2, + anon_sym_PLUS, + anon_sym_STAR, + [3183] = 1, + ACTIONS(408), 9, + anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, - anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, anon_sym_RPAREN, - [3139] = 3, - ACTIONS(410), 1, + anon_sym_RBRACE_RBRACE, + [3195] = 3, + ACTIONS(416), 1, anon_sym_SLASH, - ACTIONS(412), 1, + ACTIONS(418), 1, anon_sym_PLUS, - ACTIONS(392), 7, + ACTIONS(414), 7, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ_EQ, @@ -4866,160 +4923,135 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_TILDE, anon_sym_RPAREN, anon_sym_RBRACE_RBRACE, - [3155] = 2, - ACTIONS(422), 2, - anon_sym_if, - sym_identifier, - ACTIONS(210), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, - anon_sym_SLASH, + [3211] = 2, + ACTIONS(418), 1, anon_sym_PLUS, - anon_sym_LPAREN, + ACTIONS(400), 8, + anon_sym_COMMA, + anon_sym_SLASH, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, anon_sym_RPAREN, - [3169] = 2, - ACTIONS(192), 2, - anon_sym_if, - sym_identifier, - ACTIONS(176), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + anon_sym_RBRACE_RBRACE, + [3225] = 1, + ACTIONS(400), 9, + anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, - anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, anon_sym_RPAREN, - [3183] = 2, - ACTIONS(198), 2, + anon_sym_RBRACE_RBRACE, + [3237] = 2, + ACTIONS(204), 2, anon_sym_if, sym_identifier, - ACTIONS(182), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(184), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3197] = 5, - ACTIONS(134), 1, - sym_string_start, - ACTIONS(136), 1, - sym_raw_string_start, - ACTIONS(424), 1, + [3251] = 5, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + ACTIONS(420), 1, anon_sym_LBRACK, - ACTIONS(426), 2, + ACTIONS(422), 2, anon_sym_true, anon_sym_false, - STATE(231), 4, + STATE(211), 4, sym_boolean, sym__string, sym_string_literal, sym_raw_string_literal, - [3217] = 2, - ACTIONS(428), 2, - anon_sym_if, - sym_identifier, - ACTIONS(196), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + [3271] = 3, + ACTIONS(416), 1, anon_sym_SLASH, + ACTIONS(418), 1, anon_sym_PLUS, - anon_sym_LPAREN, + ACTIONS(424), 7, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, anon_sym_RPAREN, - [3231] = 2, - ACTIONS(430), 2, + anon_sym_RBRACE_RBRACE, + [3287] = 4, + ACTIONS(402), 1, + anon_sym_PLUS, + ACTIONS(428), 1, + anon_sym_SLASH, + ACTIONS(426), 2, anon_sym_if, sym_identifier, - ACTIONS(414), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, - anon_sym_SLASH, - anon_sym_PLUS, + ACTIONS(424), 5, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_LPAREN, anon_sym_RPAREN, - [3245] = 8, - ACTIONS(376), 1, - sym_identifier, - ACTIONS(384), 1, - anon_sym_DOLLAR, - ACTIONS(432), 1, - anon_sym_COLON, - STATE(152), 1, - aux_sym_parameters_repeat1, - STATE(175), 1, - sym_parameter, - STATE(307), 1, - sym_parameters, - STATE(360), 1, - sym_variadic_parameter, - ACTIONS(380), 2, - anon_sym_PLUS, - anon_sym_STAR, - [3271] = 2, - ACTIONS(434), 2, + [3305] = 2, + ACTIONS(430), 2, anon_sym_if, sym_identifier, - ACTIONS(190), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(186), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3285] = 2, - ACTIONS(436), 2, + [3319] = 2, + ACTIONS(410), 2, anon_sym_if, sym_identifier, - ACTIONS(178), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(176), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3299] = 2, - ACTIONS(194), 2, + [3333] = 2, + ACTIONS(432), 2, anon_sym_if, sym_identifier, - ACTIONS(184), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(434), 7, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, - [3313] = 2, - ACTIONS(412), 1, + [3347] = 4, + ACTIONS(402), 1, anon_sym_PLUS, - ACTIONS(418), 8, - anon_sym_COMMA, + ACTIONS(428), 1, anon_sym_SLASH, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_RBRACE_RBRACE, - [3327] = 1, - ACTIONS(418), 9, - anon_sym_COMMA, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, + ACTIONS(436), 2, + anon_sym_if, + sym_identifier, + ACTIONS(414), 5, + sym__string_start, + sym__raw_string_start, + sym__command_start, + anon_sym_LPAREN, anon_sym_RPAREN, - anon_sym_RBRACE_RBRACE, - [3339] = 1, - ACTIONS(396), 9, + [3365] = 1, + ACTIONS(434), 9, anon_sym_COMMA, anon_sym_SLASH, anon_sym_PLUS, @@ -5029,207 +5061,184 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_TILDE, anon_sym_RPAREN, anon_sym_RBRACE_RBRACE, - [3351] = 1, - ACTIONS(404), 9, + [3377] = 6, + ACTIONS(75), 1, + sym__string_start, + ACTIONS(77), 1, + sym__raw_string_start, + ACTIONS(438), 1, anon_sym_COMMA, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - anon_sym_RPAREN, - anon_sym_RBRACE_RBRACE, - [3363] = 2, - ACTIONS(436), 2, - anon_sym_if, - sym_identifier, - ACTIONS(178), 7, - sym_string_start, - sym_raw_string_start, - sym_command_start, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_LPAREN, - anon_sym_RPAREN, - [3377] = 2, - ACTIONS(440), 2, - sym__dedent, - sym__newline, - ACTIONS(438), 6, - anon_sym_AT, - anon_sym_AT_DASH, - anon_sym_DASH_AT, - anon_sym_DASH, - anon_sym_LBRACE_LBRACE, - sym_text, - [3390] = 7, - ACTIONS(442), 1, - sym_identifier, - ACTIONS(445), 1, - anon_sym_LPAREN, - ACTIONS(448), 1, - anon_sym_AMP_AMP, - ACTIONS(451), 1, - sym__newline, - STATE(144), 1, - sym_dependency, - STATE(237), 1, - sym_dependency_expression, - STATE(139), 2, - sym_dependencies, - aux_sym_dependencies_repeat1, - [3413] = 2, - ACTIONS(299), 2, - sym__dedent, - sym__newline, - ACTIONS(301), 6, - anon_sym_AT, - anon_sym_AT_DASH, - anon_sym_DASH_AT, - anon_sym_DASH, - anon_sym_LBRACE_LBRACE, - sym_text, - [3426] = 6, + ACTIONS(440), 1, + anon_sym_RBRACK, + STATE(143), 1, + aux_sym_setting_repeat1, + STATE(326), 3, + sym__string, + sym_string_literal, + sym_raw_string_literal, + [3398] = 6, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(453), 1, + sym__raw_string_start, + ACTIONS(438), 1, anon_sym_COMMA, - ACTIONS(455), 1, + ACTIONS(442), 1, anon_sym_RBRACK, - STATE(148), 1, + STATE(142), 1, aux_sym_setting_repeat1, - STATE(358), 3, + STATE(328), 3, sym__string, sym_string_literal, sym_raw_string_literal, - [3447] = 7, - ACTIONS(457), 1, - sym_identifier, - ACTIONS(459), 1, - anon_sym_LPAREN, - ACTIONS(461), 1, - anon_sym_AMP_AMP, - ACTIONS(463), 1, - sym__newline, - STATE(144), 1, - sym_dependency, - STATE(237), 1, - sym_dependency_expression, - STATE(146), 2, - sym_dependencies, - aux_sym_dependencies_repeat1, - [3470] = 2, - ACTIONS(467), 2, - sym__dedent, - sym__newline, - ACTIONS(465), 6, - anon_sym_AT, - anon_sym_AT_DASH, - anon_sym_DASH_AT, - anon_sym_DASH, - anon_sym_LBRACE_LBRACE, - sym_text, - [3483] = 4, - STATE(144), 1, + [3419] = 4, + STATE(140), 1, sym_dependency, - STATE(237), 1, + STATE(200), 1, sym_dependency_expression, - STATE(145), 2, + STATE(144), 2, sym_dependencies, aux_sym_dependencies_repeat1, - ACTIONS(463), 4, + ACTIONS(444), 4, sym__newline, anon_sym_LPAREN, anon_sym_AMP_AMP, sym_identifier, - [3500] = 4, - STATE(144), 1, - sym_dependency, - STATE(237), 1, - sym_dependency_expression, - STATE(139), 2, - sym_dependencies, - aux_sym_dependencies_repeat1, - ACTIONS(469), 4, + [3436] = 7, + ACTIONS(444), 1, sym__newline, - anon_sym_LPAREN, - anon_sym_AMP_AMP, - sym_identifier, - [3517] = 7, - ACTIONS(457), 1, + ACTIONS(446), 1, sym_identifier, - ACTIONS(459), 1, + ACTIONS(448), 1, anon_sym_LPAREN, - ACTIONS(461), 1, + ACTIONS(450), 1, anon_sym_AMP_AMP, - ACTIONS(469), 1, - sym__newline, - STATE(144), 1, + STATE(140), 1, sym_dependency, - STATE(237), 1, + STATE(200), 1, sym_dependency_expression, - STATE(139), 2, + STATE(147), 2, sym_dependencies, aux_sym_dependencies_repeat1, - [3540] = 6, + [3459] = 6, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(453), 1, + sym__raw_string_start, + ACTIONS(438), 1, anon_sym_COMMA, - ACTIONS(471), 1, + ACTIONS(452), 1, anon_sym_RBRACK, - STATE(150), 1, + STATE(187), 1, aux_sym_setting_repeat1, - STATE(341), 3, + STATE(360), 3, sym__string, sym_string_literal, sym_raw_string_literal, - [3561] = 6, + [3480] = 6, ACTIONS(75), 1, - sym_string_start, + sym__string_start, ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(453), 1, + sym__raw_string_start, + ACTIONS(438), 1, anon_sym_COMMA, - ACTIONS(473), 1, + ACTIONS(454), 1, anon_sym_RBRACK, - STATE(186), 1, + STATE(187), 1, aux_sym_setting_repeat1, - STATE(344), 3, + STATE(345), 3, sym__string, sym_string_literal, sym_raw_string_literal, - [3582] = 2, - ACTIONS(475), 2, + [3501] = 4, + STATE(140), 1, + sym_dependency, + STATE(200), 1, + sym_dependency_expression, + STATE(150), 2, + sym_dependencies, + aux_sym_dependencies_repeat1, + ACTIONS(456), 4, + sym__newline, + anon_sym_LPAREN, + anon_sym_AMP_AMP, + sym_identifier, + [3518] = 2, + ACTIONS(460), 2, + sym__dedent, + sym__newline, + ACTIONS(458), 6, + anon_sym_AT, + anon_sym_AT_DASH, + anon_sym_DASH_AT, + anon_sym_DASH, + anon_sym_LBRACE_LBRACE, + sym_text, + [3531] = 2, + ACTIONS(464), 2, + sym__dedent, + sym__newline, + ACTIONS(462), 6, + anon_sym_AT, + anon_sym_AT_DASH, + anon_sym_DASH_AT, + anon_sym_DASH, + anon_sym_LBRACE_LBRACE, + sym_text, + [3544] = 7, + ACTIONS(446), 1, + sym_identifier, + ACTIONS(448), 1, + anon_sym_LPAREN, + ACTIONS(450), 1, + anon_sym_AMP_AMP, + ACTIONS(456), 1, + sym__newline, + STATE(140), 1, + sym_dependency, + STATE(200), 1, + sym_dependency_expression, + STATE(150), 2, + sym_dependencies, + aux_sym_dependencies_repeat1, + [3567] = 2, + ACTIONS(466), 2, anon_sym_if, sym_identifier, - ACTIONS(477), 6, - sym_string_start, - sym_raw_string_start, - sym_command_start, + ACTIONS(468), 6, + sym__string_start, + sym__raw_string_start, + sym__command_start, anon_sym_SLASH, anon_sym_LPAREN, anon_sym_RPAREN, - [3595] = 6, - ACTIONS(75), 1, - sym_string_start, - ACTIONS(77), 1, - sym_raw_string_start, - ACTIONS(453), 1, - anon_sym_COMMA, + [3580] = 2, + ACTIONS(336), 2, + sym__dedent, + sym__newline, + ACTIONS(338), 6, + anon_sym_AT, + anon_sym_AT_DASH, + anon_sym_DASH_AT, + anon_sym_DASH, + anon_sym_LBRACE_LBRACE, + sym_text, + [3593] = 7, + ACTIONS(470), 1, + sym_identifier, + ACTIONS(473), 1, + anon_sym_LPAREN, + ACTIONS(476), 1, + anon_sym_AMP_AMP, ACTIONS(479), 1, - anon_sym_RBRACK, - STATE(186), 1, - aux_sym_setting_repeat1, - STATE(348), 3, - sym__string, - sym_string_literal, - sym_raw_string_literal, + sym__newline, + STATE(140), 1, + sym_dependency, + STATE(200), 1, + sym_dependency_expression, + STATE(150), 2, + sym_dependencies, + aux_sym_dependencies_repeat1, [3616] = 2, ACTIONS(483), 2, sym__dedent, @@ -5242,1316 +5251,1330 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACE_LBRACE, sym_text, [3629] = 6, - ACTIONS(376), 1, + ACTIONS(374), 1, sym_identifier, - ACTIONS(384), 1, + ACTIONS(382), 1, anon_sym_DOLLAR, - STATE(158), 1, + STATE(170), 1, aux_sym_parameters_repeat1, - STATE(171), 1, + STATE(177), 1, sym_parameter, - STATE(315), 1, + STATE(327), 1, sym_variadic_parameter, - ACTIONS(380), 2, + ACTIONS(378), 2, anon_sym_PLUS, anon_sym_STAR, - [3649] = 3, + [3649] = 4, ACTIONS(485), 1, - anon_sym_else, - STATE(155), 1, - aux_sym_if_expression_repeat1, - ACTIONS(275), 4, - sym__newline, - anon_sym_SLASH, - anon_sym_PLUS, - aux_sym_comment_token1, - [3662] = 4, - ACTIONS(487), 1, anon_sym_RBRACK, + ACTIONS(487), 1, + sym__string_start, ACTIONS(489), 1, - sym_string_start, - ACTIONS(491), 1, - sym_raw_string_start, - STATE(147), 3, + sym__raw_string_start, + STATE(138), 3, sym__string, sym_string_literal, sym_raw_string_literal, - [3677] = 3, + [3664] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, ACTIONS(493), 1, + sym__string_body, + ACTIONS(495), 1, + sym__command_end, + STATE(157), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3679] = 3, + ACTIONS(497), 1, anon_sym_else, - STATE(155), 1, - aux_sym_if_expression_repeat1, - ACTIONS(258), 4, - sym__newline, - anon_sym_SLASH, - anon_sym_PLUS, - aux_sym_comment_token1, - [3690] = 3, - ACTIONS(496), 1, - anon_sym_else, - STATE(153), 1, + STATE(174), 1, aux_sym_if_expression_repeat1, - ACTIONS(238), 4, + ACTIONS(350), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [3703] = 5, + [3692] = 5, ACTIONS(17), 1, anon_sym_LBRACK, ACTIONS(19), 1, anon_sym_AT, - ACTIONS(498), 1, + ACTIONS(499), 1, sym_identifier, - STATE(326), 1, + STATE(340), 1, sym_recipe_header, - STATE(180), 2, + STATE(176), 2, sym_attribute, aux_sym_recipe_repeat1, - [3720] = 4, - ACTIONS(500), 1, - sym_identifier, - ACTIONS(505), 1, - anon_sym_DOLLAR, - ACTIONS(503), 2, - anon_sym_PLUS, - anon_sym_STAR, - STATE(158), 2, - sym_parameter, - aux_sym_parameters_repeat1, - [3735] = 6, - ACTIONS(457), 1, - sym_identifier, - ACTIONS(459), 1, - anon_sym_LPAREN, - ACTIONS(508), 1, - sym__newline, - STATE(142), 1, - sym_dependency, - STATE(237), 1, - sym_dependency_expression, - STATE(332), 1, - sym_dependencies, - [3754] = 4, - ACTIONS(489), 1, - sym_string_start, - ACTIONS(491), 1, - sym_raw_string_start, - ACTIONS(510), 1, - anon_sym_RBRACK, - STATE(141), 3, + [3709] = 4, + ACTIONS(501), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(504), 1, + sym__string_body, + ACTIONS(507), 1, + sym__command_end, + STATE(157), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3724] = 4, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + ACTIONS(509), 1, + anon_sym_QMARK, + STATE(91), 3, sym__string, sym_string_literal, sym_raw_string_literal, - [3769] = 6, - ACTIONS(457), 1, + [3739] = 6, + ACTIONS(446), 1, sym_identifier, - ACTIONS(459), 1, + ACTIONS(448), 1, anon_sym_LPAREN, - ACTIONS(512), 1, + ACTIONS(511), 1, sym__newline, - STATE(142), 1, + STATE(141), 1, sym_dependency, - STATE(237), 1, + STATE(200), 1, sym_dependency_expression, - STATE(342), 1, + STATE(358), 1, sym_dependencies, - [3788] = 6, - ACTIONS(457), 1, - sym_identifier, - ACTIONS(459), 1, - anon_sym_LPAREN, - ACTIONS(514), 1, - sym__newline, - STATE(142), 1, - sym_dependency, - STATE(237), 1, - sym_dependency_expression, - STATE(333), 1, - sym_dependencies, - [3807] = 6, - ACTIONS(457), 1, + [3758] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(493), 1, + sym__string_body, + ACTIONS(513), 1, + sym__command_end, + STATE(157), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3773] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(493), 1, + sym__string_body, + ACTIONS(515), 1, + sym__command_end, + STATE(166), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3788] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(493), 1, + sym__string_body, + ACTIONS(517), 1, + sym__command_end, + STATE(160), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3803] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(493), 1, + sym__string_body, + ACTIONS(519), 1, + sym__command_end, + STATE(157), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3818] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(493), 1, + sym__string_body, + ACTIONS(521), 1, + sym__command_end, + STATE(163), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3833] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(493), 1, + sym__string_body, + ACTIONS(523), 1, + sym__command_end, + STATE(154), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3848] = 4, + ACTIONS(491), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(493), 1, + sym__string_body, + ACTIONS(525), 1, + sym__command_end, + STATE(157), 3, + sym_interpolation, + sym_command_body, + aux_sym_external_command_repeat1, + [3863] = 6, + ACTIONS(446), 1, sym_identifier, - ACTIONS(459), 1, + ACTIONS(448), 1, anon_sym_LPAREN, - ACTIONS(516), 1, + ACTIONS(527), 1, sym__newline, - STATE(142), 1, + STATE(141), 1, sym_dependency, - STATE(237), 1, + STATE(200), 1, sym_dependency_expression, - STATE(340), 1, + STATE(314), 1, sym_dependencies, - [3826] = 2, - ACTIONS(520), 1, - anon_sym_EQ, - ACTIONS(518), 5, + [3882] = 4, + ACTIONS(487), 1, + sym__string_start, + ACTIONS(489), 1, + sym__raw_string_start, + ACTIONS(529), 1, + anon_sym_RBRACK, + STATE(139), 3, + sym__string, + sym_string_literal, + sym_raw_string_literal, + [3897] = 3, + ACTIONS(531), 1, + anon_sym_else, + STATE(169), 1, + aux_sym_if_expression_repeat1, + ACTIONS(254), 4, + sym__newline, + anon_sym_SLASH, anon_sym_PLUS, - anon_sym_COLON, + aux_sym_comment_token1, + [3910] = 4, + ACTIONS(534), 1, + sym_identifier, + ACTIONS(539), 1, anon_sym_DOLLAR, + ACTIONS(537), 2, + anon_sym_PLUS, anon_sym_STAR, - sym_identifier, - [3837] = 2, - ACTIONS(524), 1, + STATE(170), 2, + sym_parameter, + aux_sym_parameters_repeat1, + [3925] = 2, + ACTIONS(544), 1, anon_sym_EQ, - ACTIONS(522), 5, + ACTIONS(542), 5, anon_sym_PLUS, anon_sym_COLON, anon_sym_DOLLAR, anon_sym_STAR, sym_identifier, - [3848] = 4, - ACTIONS(134), 1, - sym_string_start, - ACTIONS(136), 1, - sym_raw_string_start, - ACTIONS(526), 1, - anon_sym_QMARK, - STATE(80), 3, - sym__string, - sym_string_literal, - sym_raw_string_literal, - [3863] = 3, - ACTIONS(489), 1, - sym_string_start, - ACTIONS(491), 1, - sym_raw_string_start, - STATE(202), 3, - sym__string, - sym_string_literal, - sym_raw_string_literal, - [3875] = 1, - ACTIONS(528), 5, + [3936] = 2, + ACTIONS(548), 1, + anon_sym_EQ, + ACTIONS(546), 5, anon_sym_PLUS, anon_sym_COLON, anon_sym_DOLLAR, anon_sym_STAR, sym_identifier, - [3883] = 5, - ACTIONS(25), 1, + [3947] = 6, + ACTIONS(446), 1, + sym_identifier, + ACTIONS(448), 1, + anon_sym_LPAREN, + ACTIONS(550), 1, sym__newline, - ACTIONS(61), 1, + STATE(141), 1, + sym_dependency, + STATE(200), 1, + sym_dependency_expression, + STATE(310), 1, + sym_dependencies, + [3966] = 3, + ACTIONS(552), 1, + anon_sym_else, + STATE(169), 1, + aux_sym_if_expression_repeat1, + ACTIONS(244), 4, + sym__newline, + anon_sym_SLASH, + anon_sym_PLUS, aux_sym_comment_token1, - ACTIONS(530), 1, - anon_sym_COLON_EQ, - STATE(78), 1, - sym_comment, - STATE(91), 1, - sym_eol, - [3899] = 4, - ACTIONS(532), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(535), 1, - sym_text, - ACTIONS(538), 1, + [3979] = 6, + ACTIONS(446), 1, + sym_identifier, + ACTIONS(448), 1, + anon_sym_LPAREN, + ACTIONS(554), 1, sym__newline, - STATE(170), 2, - sym_interpolation, - aux_sym_recipe_line_repeat1, - [3913] = 2, - ACTIONS(542), 1, + STATE(141), 1, + sym_dependency, + STATE(200), 1, + sym_dependency_expression, + STATE(335), 1, + sym_dependencies, + [3998] = 3, + ACTIONS(558), 1, + anon_sym_LBRACK, + ACTIONS(556), 2, + anon_sym_AT, + sym_identifier, + STATE(176), 2, + sym_attribute, + aux_sym_recipe_repeat1, + [4010] = 2, + ACTIONS(563), 1, anon_sym_COLON, - ACTIONS(540), 4, + ACTIONS(561), 4, anon_sym_PLUS, anon_sym_DOLLAR, anon_sym_STAR, sym_identifier, - [3923] = 4, - ACTIONS(544), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(547), 1, - sym_string_body, - ACTIONS(550), 1, - sym_command_end, - STATE(172), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [3937] = 4, - ACTIONS(166), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(552), 1, - sym_text, - ACTIONS(554), 1, - sym__newline, - STATE(170), 2, - sym_interpolation, - aux_sym_recipe_line_repeat1, - [3951] = 3, - ACTIONS(556), 1, + [4020] = 3, + ACTIONS(144), 1, + sym__string_start, + ACTIONS(146), 1, + sym__raw_string_start, + STATE(89), 3, + sym__string, + sym_string_literal, + sym_raw_string_literal, + [4032] = 3, + ACTIONS(565), 1, anon_sym_else, - STATE(174), 1, + STATE(180), 1, + aux_sym_if_expression_repeat1, + ACTIONS(350), 3, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_RBRACE, + [4044] = 3, + ACTIONS(567), 1, + anon_sym_else, + STATE(181), 1, aux_sym_if_expression_repeat1, - ACTIONS(258), 3, + ACTIONS(244), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [3963] = 2, - ACTIONS(559), 1, + [4056] = 3, + ACTIONS(569), 1, + anon_sym_else, + STATE(181), 1, + aux_sym_if_expression_repeat1, + ACTIONS(254), 3, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_RBRACE, + [4068] = 2, + ACTIONS(572), 1, anon_sym_COLON, - ACTIONS(540), 4, + ACTIONS(561), 4, anon_sym_PLUS, anon_sym_DOLLAR, anon_sym_STAR, sym_identifier, - [3973] = 4, - ACTIONS(561), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(563), 1, - sym_string_body, - ACTIONS(565), 1, - sym_command_end, - STATE(185), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [3987] = 4, - ACTIONS(561), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(567), 1, - sym_string_body, - ACTIONS(569), 1, - sym_command_end, - STATE(172), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [4001] = 5, - ACTIONS(457), 1, + [4078] = 5, + ACTIONS(446), 1, sym_identifier, - ACTIONS(459), 1, + ACTIONS(448), 1, anon_sym_LPAREN, - STATE(144), 1, + STATE(140), 1, sym_dependency, - STATE(222), 1, - sym_dependencies, - STATE(237), 1, + STATE(200), 1, sym_dependency_expression, - [4017] = 4, - ACTIONS(166), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(552), 1, - sym_text, - ACTIONS(571), 1, + STATE(236), 1, + sym_dependencies, + [4094] = 1, + ACTIONS(574), 5, + anon_sym_PLUS, + anon_sym_COLON, + anon_sym_DOLLAR, + anon_sym_STAR, + sym_identifier, + [4102] = 1, + ACTIONS(368), 5, sym__newline, - STATE(170), 2, - sym_interpolation, - aux_sym_recipe_line_repeat1, - [4031] = 3, - ACTIONS(575), 1, - anon_sym_LBRACK, - ACTIONS(573), 2, - anon_sym_AT, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_else, + aux_sym_comment_token1, + [4110] = 1, + ACTIONS(576), 5, + anon_sym_PLUS, + anon_sym_COLON, + anon_sym_DOLLAR, + anon_sym_STAR, sym_identifier, - STATE(180), 2, - sym_attribute, - aux_sym_recipe_repeat1, - [4043] = 4, - ACTIONS(561), 1, - anon_sym_LBRACE_LBRACE, + [4118] = 3, ACTIONS(578), 1, - sym_string_body, - ACTIONS(580), 1, - sym_command_end, - STATE(177), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [4057] = 4, - ACTIONS(166), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(571), 1, + anon_sym_COMMA, + STATE(187), 1, + aux_sym_setting_repeat1, + ACTIONS(581), 3, + sym__string_start, + sym__raw_string_start, + anon_sym_RBRACK, + [4130] = 5, + ACTIONS(25), 1, sym__newline, - ACTIONS(582), 1, - sym_text, - STATE(173), 2, - sym_interpolation, - aux_sym_recipe_line_repeat1, - [4071] = 3, - ACTIONS(134), 1, - sym_string_start, - ACTIONS(136), 1, - sym_raw_string_start, - STATE(97), 3, + ACTIONS(61), 1, + aux_sym_comment_token1, + ACTIONS(583), 1, + anon_sym_COLON_EQ, + STATE(73), 1, + sym_eol, + STATE(77), 1, + sym_comment, + [4146] = 3, + ACTIONS(487), 1, + sym__string_start, + ACTIONS(489), 1, + sym__raw_string_start, + STATE(217), 3, sym__string, sym_string_literal, sym_raw_string_literal, - [4083] = 4, - ACTIONS(561), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(567), 1, - sym_string_body, - ACTIONS(584), 1, - sym_command_end, - STATE(172), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [4097] = 4, - ACTIONS(561), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(567), 1, - sym_string_body, - ACTIONS(586), 1, - sym_command_end, - STATE(172), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [4111] = 3, - ACTIONS(588), 1, - anon_sym_COMMA, - STATE(186), 1, - aux_sym_setting_repeat1, - ACTIONS(591), 3, - sym_string_start, - sym_raw_string_start, - anon_sym_RBRACK, - [4123] = 4, - ACTIONS(561), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(593), 1, - sym_string_body, - ACTIONS(595), 1, - sym_command_end, - STATE(192), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [4137] = 2, - ACTIONS(597), 1, + [4158] = 2, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(178), 4, + ACTIONS(176), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [4147] = 3, - ACTIONS(599), 1, - anon_sym_else, - STATE(193), 1, - aux_sym_if_expression_repeat1, - ACTIONS(238), 3, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_RBRACE, - [4159] = 1, - ACTIONS(374), 5, + [4168] = 4, + ACTIONS(166), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(587), 1, + sym_text, + ACTIONS(589), 1, sym__newline, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_else, - aux_sym_comment_token1, - [4167] = 1, - ACTIONS(370), 5, + STATE(195), 2, + sym_interpolation, + aux_sym_recipe_line_repeat1, + [4182] = 1, + ACTIONS(372), 5, sym__newline, anon_sym_SLASH, anon_sym_PLUS, anon_sym_else, aux_sym_comment_token1, - [4175] = 4, - ACTIONS(561), 1, + [4190] = 4, + ACTIONS(591), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(567), 1, - sym_string_body, + ACTIONS(594), 1, + sym_text, + ACTIONS(597), 1, + sym__newline, + STATE(193), 2, + sym_interpolation, + aux_sym_recipe_line_repeat1, + [4204] = 4, + ACTIONS(166), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(589), 1, + sym__newline, + ACTIONS(599), 1, + sym_text, + STATE(193), 2, + sym_interpolation, + aux_sym_recipe_line_repeat1, + [4218] = 4, + ACTIONS(166), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(599), 1, + sym_text, ACTIONS(601), 1, - sym_command_end, - STATE(172), 2, + sym__newline, + STATE(193), 2, sym_interpolation, - aux_sym_external_command_repeat1, - [4189] = 3, - ACTIONS(603), 1, - anon_sym_else, - STATE(174), 1, - aux_sym_if_expression_repeat1, - ACTIONS(275), 3, + aux_sym_recipe_line_repeat1, + [4232] = 1, + ACTIONS(228), 4, + sym__newline, anon_sym_SLASH, anon_sym_PLUS, - anon_sym_RBRACE, - [4201] = 4, - ACTIONS(561), 1, - anon_sym_LBRACE_LBRACE, + aux_sym_comment_token1, + [4239] = 3, ACTIONS(605), 1, - sym_string_body, - ACTIONS(607), 1, - sym_command_end, - STATE(184), 2, - sym_interpolation, - aux_sym_external_command_repeat1, - [4215] = 1, - ACTIONS(609), 5, + sym__string_end, + STATE(237), 1, + aux_sym_string_literal_repeat1, + ACTIONS(603), 2, + sym__string_body, + sym_escape_sequence, + [4250] = 1, + ACTIONS(372), 4, + anon_sym_SLASH, anon_sym_PLUS, - anon_sym_COLON, - anon_sym_DOLLAR, - anon_sym_STAR, - sym_identifier, - [4223] = 1, - ACTIONS(396), 4, + anon_sym_else, + anon_sym_RBRACE, + [4257] = 4, + ACTIONS(25), 1, sym__newline, - anon_sym_SLASH, - anon_sym_PLUS, + ACTIONS(61), 1, aux_sym_comment_token1, - [4230] = 1, - ACTIONS(182), 4, - sym_string_start, - sym_raw_string_start, - anon_sym_COMMA, - anon_sym_RBRACK, - [4237] = 1, - ACTIONS(210), 4, + STATE(77), 1, + sym_comment, + STATE(85), 1, + sym_eol, + [4270] = 1, + ACTIONS(607), 4, sym__newline, - anon_sym_SLASH, - anon_sym_PLUS, + anon_sym_LPAREN, + anon_sym_AMP_AMP, + sym_identifier, + [4277] = 4, + ACTIONS(25), 1, + sym__newline, + ACTIONS(61), 1, aux_sym_comment_token1, - [4244] = 1, - ACTIONS(230), 4, + STATE(77), 1, + sym_comment, + STATE(80), 1, + sym_eol, + [4290] = 1, + ACTIONS(396), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [4251] = 1, - ACTIONS(611), 4, + [4297] = 4, + ACTIONS(609), 1, + aux_sym_comment_token1, + ACTIONS(611), 1, sym__newline, - anon_sym_LPAREN, - anon_sym_AMP_AMP, - sym_identifier, - [4258] = 4, + STATE(249), 1, + sym_eol, + STATE(273), 1, + sym_comment, + [4310] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(88), 1, + STATE(82), 1, sym_eol, - [4271] = 1, - ACTIONS(613), 4, - sym_string_start, - sym_raw_string_start, - anon_sym_COMMA, - anon_sym_RBRACK, - [4278] = 1, - ACTIONS(212), 4, + [4323] = 3, + ACTIONS(616), 1, + sym__string_end, + STATE(205), 1, + aux_sym_string_literal_repeat1, + ACTIONS(613), 2, + sym__string_body, + sym_escape_sequence, + [4334] = 1, + ACTIONS(408), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [4285] = 4, + [4341] = 3, + ACTIONS(620), 1, + sym__string_end, + STATE(205), 1, + aux_sym_string_literal_repeat1, + ACTIONS(618), 2, + sym__string_body, + sym_escape_sequence, + [4352] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(100), 1, + STATE(79), 1, sym_eol, - [4298] = 4, + [4365] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(101), 1, + STATE(78), 1, sym_eol, - [4311] = 3, - ACTIONS(617), 1, - sym_string_end, - STATE(233), 1, + [4378] = 3, + ACTIONS(624), 1, + sym__string_end, + STATE(207), 1, aux_sym_string_literal_repeat1, - ACTIONS(615), 2, - sym_string_body, + ACTIONS(622), 2, + sym__string_body, sym_escape_sequence, - [4322] = 4, + [4389] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(73), 1, + STATE(70), 1, sym_eol, - STATE(78), 1, + STATE(77), 1, sym_comment, - [4335] = 4, + [4402] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(77), 1, + STATE(76), 1, sym_eol, - STATE(78), 1, + STATE(77), 1, sym_comment, - [4348] = 3, - ACTIONS(621), 1, - sym_string_end, - STATE(206), 1, - aux_sym_string_literal_repeat1, - ACTIONS(619), 2, - sym_string_body, - sym_escape_sequence, - [4359] = 3, - ACTIONS(625), 1, - sym_string_end, - STATE(238), 1, - aux_sym_string_literal_repeat1, - ACTIONS(623), 2, - sym_string_body, - sym_escape_sequence, - [4370] = 3, - ACTIONS(627), 1, - sym_string_end, - STATE(233), 1, - aux_sym_string_literal_repeat1, - ACTIONS(615), 2, - sym_string_body, - sym_escape_sequence, - [4381] = 3, - ACTIONS(631), 1, - sym_string_end, - STATE(211), 1, - aux_sym_string_literal_repeat1, - ACTIONS(629), 2, - sym_string_body, - sym_escape_sequence, - [4392] = 2, - ACTIONS(633), 1, - anon_sym_PLUS, - ACTIONS(418), 3, - sym__newline, + [4415] = 2, + ACTIONS(626), 1, + anon_sym_LPAREN, + ACTIONS(176), 3, anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_RBRACE, + [4424] = 4, + ACTIONS(609), 1, aux_sym_comment_token1, - [4401] = 4, + ACTIONS(611), 1, + sym__newline, + STATE(253), 1, + sym_eol, + STATE(273), 1, + sym_comment, + [4437] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, - sym_comment, - STATE(102), 1, + STATE(71), 1, sym_eol, - [4414] = 1, - ACTIONS(418), 4, + STATE(77), 1, + sym_comment, + [4450] = 1, + ACTIONS(186), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [4421] = 4, + [4457] = 1, + ACTIONS(628), 4, + sym__string_start, + sym__raw_string_start, + anon_sym_COMMA, + anon_sym_RBRACK, + [4464] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(104), 1, + STATE(87), 1, sym_eol, - [4434] = 1, - ACTIONS(635), 4, + [4477] = 1, + ACTIONS(630), 4, sym__newline, anon_sym_LPAREN, anon_sym_AMP_AMP, sym_identifier, - [4441] = 1, - ACTIONS(404), 4, + [4484] = 1, + ACTIONS(212), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [4448] = 3, - ACTIONS(637), 1, - sym_string_end, - STATE(233), 1, - aux_sym_string_literal_repeat1, - ACTIONS(615), 2, - sym_string_body, - sym_escape_sequence, - [4459] = 3, - ACTIONS(641), 1, - sym_string_end, - STATE(219), 1, - aux_sym_string_literal_repeat1, - ACTIONS(639), 2, - sym_string_body, - sym_escape_sequence, - [4470] = 2, - ACTIONS(643), 1, - anon_sym_LBRACE, - ACTIONS(645), 3, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_EQ_TILDE, - [4479] = 1, - ACTIONS(451), 4, - sym__newline, - anon_sym_LPAREN, - anon_sym_AMP_AMP, - sym_identifier, - [4486] = 3, - ACTIONS(647), 1, - sym_string_end, - STATE(233), 1, - aux_sym_string_literal_repeat1, - ACTIONS(615), 2, - sym_string_body, - sym_escape_sequence, - [4497] = 3, - ACTIONS(633), 1, - anon_sym_PLUS, - ACTIONS(649), 1, + [4491] = 3, + ACTIONS(632), 1, anon_sym_SLASH, - ACTIONS(392), 2, + ACTIONS(634), 1, + anon_sym_PLUS, + ACTIONS(414), 2, sym__newline, aux_sym_comment_token1, - [4508] = 1, - ACTIONS(190), 4, - sym__newline, + [4502] = 3, + ACTIONS(632), 1, anon_sym_SLASH, + ACTIONS(634), 1, anon_sym_PLUS, + ACTIONS(424), 2, + sym__newline, aux_sym_comment_token1, - [4515] = 3, - ACTIONS(653), 1, - sym_string_end, - STATE(223), 1, + [4513] = 2, + ACTIONS(636), 1, + anon_sym_LBRACE, + ACTIONS(638), 3, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_EQ_TILDE, + [4522] = 3, + ACTIONS(642), 1, + sym__string_end, + STATE(227), 1, aux_sym_string_literal_repeat1, - ACTIONS(651), 2, - sym_string_body, + ACTIONS(640), 2, + sym__string_body, sym_escape_sequence, - [4526] = 1, - ACTIONS(374), 4, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_else, - anon_sym_RBRACE, - [4533] = 4, - ACTIONS(655), 1, - aux_sym_comment_token1, - ACTIONS(657), 1, - sym__newline, - STATE(260), 1, - sym_comment, - STATE(284), 1, - sym_eol, - [4546] = 1, - ACTIONS(370), 4, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_else, - anon_sym_RBRACE, - [4553] = 1, - ACTIONS(196), 4, - sym__newline, - anon_sym_SLASH, - anon_sym_PLUS, - aux_sym_comment_token1, - [4560] = 4, - ACTIONS(25), 1, - sym__newline, - ACTIONS(61), 1, - aux_sym_comment_token1, - STATE(78), 1, - sym_comment, - STATE(82), 1, - sym_eol, - [4573] = 1, - ACTIONS(184), 4, - sym_string_start, - sym_raw_string_start, - anon_sym_COMMA, - anon_sym_RBRACK, - [4580] = 3, - ACTIONS(662), 1, - sym_string_end, - STATE(233), 1, + [4533] = 3, + ACTIONS(644), 1, + sym__string_end, + STATE(205), 1, + aux_sym_string_literal_repeat1, + ACTIONS(618), 2, + sym__string_body, + sym_escape_sequence, + [4544] = 3, + ACTIONS(648), 1, + sym__string_end, + STATE(225), 1, + aux_sym_string_literal_repeat1, + ACTIONS(646), 2, + sym__string_body, + sym_escape_sequence, + [4555] = 3, + ACTIONS(650), 1, + sym__string_end, + STATE(205), 1, aux_sym_string_literal_repeat1, - ACTIONS(659), 2, - sym_string_body, + ACTIONS(618), 2, + sym__string_body, sym_escape_sequence, - [4591] = 4, + [4566] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(83), 1, + STATE(102), 1, sym_eol, - [4604] = 4, + [4579] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(98), 1, + STATE(81), 1, sym_eol, - [4617] = 4, + [4592] = 4, ACTIONS(25), 1, sym__newline, ACTIONS(61), 1, aux_sym_comment_token1, - STATE(78), 1, + STATE(77), 1, sym_comment, - STATE(94), 1, + STATE(90), 1, sym_eol, - [4630] = 1, - ACTIONS(664), 4, + [4605] = 1, + ACTIONS(652), 4, sym__newline, anon_sym_LPAREN, anon_sym_AMP_AMP, sym_identifier, + [4612] = 1, + ACTIONS(434), 4, + sym__newline, + anon_sym_SLASH, + anon_sym_PLUS, + aux_sym_comment_token1, + [4619] = 1, + ACTIONS(176), 4, + sym__newline, + anon_sym_SLASH, + anon_sym_PLUS, + aux_sym_comment_token1, + [4626] = 3, + ACTIONS(656), 1, + sym__string_end, + STATE(235), 1, + aux_sym_string_literal_repeat1, + ACTIONS(654), 2, + sym__string_body, + sym_escape_sequence, [4637] = 3, - ACTIONS(666), 1, - sym_string_end, - STATE(233), 1, + ACTIONS(658), 1, + sym__string_end, + STATE(205), 1, aux_sym_string_literal_repeat1, - ACTIONS(615), 2, - sym_string_body, + ACTIONS(618), 2, + sym__string_body, sym_escape_sequence, [4648] = 1, - ACTIONS(668), 4, + ACTIONS(479), 4, sym__newline, anon_sym_LPAREN, anon_sym_AMP_AMP, sym_identifier, - [4655] = 4, - ACTIONS(655), 1, - aux_sym_comment_token1, - ACTIONS(657), 1, + [4655] = 3, + ACTIONS(660), 1, + sym__string_end, + STATE(205), 1, + aux_sym_string_literal_repeat1, + ACTIONS(618), 2, + sym__string_body, + sym_escape_sequence, + [4666] = 1, + ACTIONS(662), 4, sym__newline, - STATE(260), 1, - sym_comment, - STATE(266), 1, - sym_eol, - [4668] = 2, - ACTIONS(670), 1, anon_sym_LPAREN, - ACTIONS(178), 3, + anon_sym_AMP_AMP, + sym_identifier, + [4673] = 1, + ACTIONS(400), 4, + sym__newline, + anon_sym_SLASH, + anon_sym_PLUS, + aux_sym_comment_token1, + [4680] = 2, + ACTIONS(634), 1, + anon_sym_PLUS, + ACTIONS(400), 3, + sym__newline, + anon_sym_SLASH, + aux_sym_comment_token1, + [4689] = 1, + ACTIONS(368), 4, anon_sym_SLASH, anon_sym_PLUS, + anon_sym_else, anon_sym_RBRACE, - [4677] = 1, - ACTIONS(174), 4, - sym_string_start, - sym_raw_string_start, + [4696] = 1, + ACTIONS(182), 4, + sym__string_start, + sym__raw_string_start, anon_sym_COMMA, anon_sym_RBRACK, - [4684] = 1, - ACTIONS(176), 4, - sym_string_start, - sym_raw_string_start, + [4703] = 1, + ACTIONS(180), 4, + sym__string_start, + sym__raw_string_start, + anon_sym_COMMA, + anon_sym_RBRACK, + [4710] = 1, + ACTIONS(184), 4, + sym__string_start, + sym__raw_string_start, anon_sym_COMMA, anon_sym_RBRACK, - [4691] = 1, - ACTIONS(178), 4, + [4717] = 1, + ACTIONS(230), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [4698] = 1, - ACTIONS(414), 4, + [4724] = 1, + ACTIONS(174), 4, + sym__string_start, + sym__raw_string_start, + anon_sym_COMMA, + anon_sym_RBRACK, + [4731] = 1, + ACTIONS(226), 4, sym__newline, anon_sym_SLASH, anon_sym_PLUS, aux_sym_comment_token1, - [4705] = 3, - ACTIONS(633), 1, - anon_sym_PLUS, - ACTIONS(649), 1, - anon_sym_SLASH, - ACTIONS(408), 2, - sym__newline, - aux_sym_comment_token1, - [4716] = 4, - ACTIONS(25), 1, - sym__newline, - ACTIONS(61), 1, - aux_sym_comment_token1, - STATE(71), 1, - sym_eol, - STATE(78), 1, - sym_comment, - [4729] = 1, - ACTIONS(196), 3, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_RBRACE, - [4735] = 1, - ACTIONS(396), 3, + [4738] = 1, + ACTIONS(180), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [4741] = 2, - ACTIONS(674), 1, - sym__newline, - ACTIONS(672), 2, - anon_sym_LBRACE_LBRACE, - sym_text, - [4749] = 2, - ACTIONS(678), 1, + [4744] = 1, + ACTIONS(664), 3, + anon_sym_LBRACK, + anon_sym_AT, + sym_identifier, + [4750] = 3, + ACTIONS(666), 1, + anon_sym_if, + ACTIONS(668), 1, + anon_sym_LBRACE, + STATE(120), 1, + sym__braced_expr, + [4760] = 2, + ACTIONS(672), 1, sym__newline, - ACTIONS(676), 2, + ACTIONS(670), 2, anon_sym_LBRACE_LBRACE, sym_text, - [4757] = 3, - ACTIONS(680), 1, + [4768] = 3, + ACTIONS(674), 1, anon_sym_if, - ACTIONS(682), 1, + ACTIONS(676), 1, anon_sym_LBRACE, - STATE(264), 1, + STATE(114), 1, sym__braced_expr, - [4767] = 3, + [4778] = 1, + ACTIONS(678), 3, + anon_sym_LBRACK, + anon_sym_AT, + sym_identifier, + [4784] = 3, ACTIONS(680), 1, - anon_sym_if, + anon_sym_COMMA, ACTIONS(682), 1, - anon_sym_LBRACE, - STATE(249), 1, - sym__braced_expr, - [4777] = 3, - ACTIONS(684), 1, + anon_sym_RBRACK, + STATE(277), 1, + aux_sym_attribute_repeat1, + [4794] = 3, + ACTIONS(674), 1, anon_sym_if, - ACTIONS(686), 1, + ACTIONS(676), 1, anon_sym_LBRACE, - STATE(218), 1, + STATE(118), 1, sym__braced_expr, - [4787] = 3, + [4804] = 2, + ACTIONS(686), 1, + sym__newline, + ACTIONS(684), 2, + anon_sym_LBRACE_LBRACE, + sym_text, + [4812] = 1, + ACTIONS(672), 3, + sym__string_body, + sym__command_end, + anon_sym_LBRACE_LBRACE, + [4818] = 3, ACTIONS(688), 1, - anon_sym_COMMA, + anon_sym_if, ACTIONS(690), 1, - anon_sym_RPAREN, - STATE(279), 1, - aux_sym_sequence_repeat1, - [4797] = 3, + anon_sym_LBRACE, + STATE(202), 1, + sym__braced_expr, + [4828] = 1, + ACTIONS(184), 3, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_RBRACE, + [4834] = 3, + ACTIONS(374), 1, + sym_identifier, + ACTIONS(382), 1, + anon_sym_DOLLAR, + STATE(307), 1, + sym_parameter, + [4844] = 3, ACTIONS(692), 1, anon_sym_COMMA, - ACTIONS(695), 1, + ACTIONS(694), 1, anon_sym_RPAREN, - STATE(256), 1, + STATE(285), 1, aux_sym_sequence_repeat1, - [4807] = 3, - ACTIONS(697), 1, + [4854] = 3, + ACTIONS(666), 1, anon_sym_if, - ACTIONS(699), 1, + ACTIONS(668), 1, anon_sym_LBRACE, - STATE(114), 1, + STATE(125), 1, sym__braced_expr, - [4817] = 3, - ACTIONS(701), 1, + [4864] = 1, + ACTIONS(696), 3, + sym__string_body, + sym__command_end, + anon_sym_LBRACE_LBRACE, + [4870] = 1, + ACTIONS(174), 3, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_RBRACE, + [4876] = 3, + ACTIONS(698), 1, anon_sym_COMMA, - ACTIONS(703), 1, + ACTIONS(701), 1, anon_sym_RBRACK, - STATE(263), 1, + STATE(265), 1, aux_sym_attribute_repeat1, - [4827] = 3, - ACTIONS(697), 1, + [4886] = 1, + ACTIONS(400), 3, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_RBRACE, + [4892] = 3, + ACTIONS(692), 1, + anon_sym_COMMA, + ACTIONS(703), 1, + anon_sym_RPAREN, + STATE(261), 1, + aux_sym_sequence_repeat1, + [4902] = 3, + ACTIONS(705), 1, anon_sym_if, - ACTIONS(699), 1, + ACTIONS(707), 1, anon_sym_LBRACE, - STATE(111), 1, + STATE(286), 1, sym__braced_expr, - [4837] = 1, - ACTIONS(271), 3, + [4912] = 1, + ACTIONS(332), 3, anon_sym_LBRACK, anon_sym_AT, sym_identifier, - [4843] = 3, - ACTIONS(705), 1, - anon_sym_if, - ACTIONS(707), 1, - anon_sym_LBRACE, - STATE(136), 1, - sym__braced_expr, - [4853] = 3, - ACTIONS(705), 1, - anon_sym_if, - ACTIONS(707), 1, - anon_sym_LBRACE, - STATE(135), 1, - sym__braced_expr, - [4863] = 3, + [4918] = 3, + ACTIONS(414), 1, + anon_sym_RBRACE, ACTIONS(709), 1, - anon_sym_COMMA, - ACTIONS(712), 1, - anon_sym_RBRACK, - STATE(263), 1, - aux_sym_attribute_repeat1, - [4873] = 1, - ACTIONS(404), 3, anon_sym_SLASH, + ACTIONS(711), 1, anon_sym_PLUS, - anon_sym_RBRACE, - [4879] = 1, - ACTIONS(678), 3, - sym_string_body, - sym_command_end, - anon_sym_LBRACE_LBRACE, - [4885] = 1, - ACTIONS(714), 3, - anon_sym_LBRACK, - anon_sym_AT, - sym_identifier, - [4891] = 1, - ACTIONS(174), 3, + [4928] = 1, + ACTIONS(434), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [4897] = 1, + [4934] = 1, ACTIONS(176), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [4903] = 1, + [4940] = 1, + ACTIONS(267), 3, + anon_sym_LBRACK, + anon_sym_AT, + sym_identifier, + [4946] = 1, ACTIONS(182), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [4909] = 3, - ACTIONS(408), 1, - anon_sym_RBRACE, - ACTIONS(716), 1, + [4952] = 1, + ACTIONS(186), 3, anon_sym_SLASH, - ACTIONS(718), 1, anon_sym_PLUS, - [4919] = 1, - ACTIONS(414), 3, + anon_sym_RBRACE, + [4958] = 3, + ACTIONS(424), 1, + anon_sym_RBRACE, + ACTIONS(709), 1, anon_sym_SLASH, + ACTIONS(711), 1, anon_sym_PLUS, - anon_sym_RBRACE, - [4925] = 1, - ACTIONS(178), 3, + [4968] = 3, + ACTIONS(680), 1, + anon_sym_COMMA, + ACTIONS(713), 1, + anon_sym_RBRACK, + STATE(265), 1, + aux_sym_attribute_repeat1, + [4978] = 1, + ACTIONS(226), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [4931] = 1, - ACTIONS(184), 3, + [4984] = 1, + ACTIONS(228), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [4937] = 3, - ACTIONS(376), 1, - sym_identifier, - ACTIONS(384), 1, - anon_sym_DOLLAR, - STATE(336), 1, - sym_parameter, - [4947] = 1, - ACTIONS(190), 3, + [4990] = 1, + ACTIONS(230), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [4953] = 3, - ACTIONS(392), 1, - anon_sym_RBRACE, - ACTIONS(716), 1, - anon_sym_SLASH, - ACTIONS(718), 1, + [4996] = 2, + ACTIONS(711), 1, anon_sym_PLUS, - [4963] = 3, - ACTIONS(701), 1, - anon_sym_COMMA, - ACTIONS(720), 1, - anon_sym_RBRACK, - STATE(258), 1, - aux_sym_attribute_repeat1, - [4973] = 3, - ACTIONS(684), 1, + ACTIONS(400), 2, + anon_sym_SLASH, + anon_sym_RBRACE, + [5004] = 3, + ACTIONS(705), 1, anon_sym_if, - ACTIONS(686), 1, + ACTIONS(707), 1, anon_sym_LBRACE, - STATE(196), 1, + STATE(287), 1, sym__braced_expr, - [4983] = 3, + [5014] = 3, ACTIONS(688), 1, - anon_sym_COMMA, - ACTIONS(722), 1, - anon_sym_RPAREN, - STATE(256), 1, - aux_sym_sequence_repeat1, - [4993] = 1, - ACTIONS(210), 3, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_RBRACE, - [4999] = 1, + anon_sym_if, + ACTIONS(690), 1, + anon_sym_LBRACE, + STATE(206), 1, + sym__braced_expr, + [5024] = 1, ACTIONS(212), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [5005] = 2, + [5030] = 3, + ACTIONS(715), 1, + anon_sym_COMMA, ACTIONS(718), 1, - anon_sym_PLUS, - ACTIONS(418), 2, - anon_sym_SLASH, - anon_sym_RBRACE, - [5013] = 1, - ACTIONS(418), 3, + anon_sym_RPAREN, + STATE(285), 1, + aux_sym_sequence_repeat1, + [5040] = 1, + ACTIONS(396), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [5019] = 1, - ACTIONS(724), 3, - anon_sym_LBRACK, - anon_sym_AT, - sym_identifier, - [5025] = 1, - ACTIONS(230), 3, + [5046] = 1, + ACTIONS(408), 3, anon_sym_SLASH, anon_sym_PLUS, anon_sym_RBRACE, - [5031] = 1, - ACTIONS(232), 3, - anon_sym_LBRACK, - anon_sym_AT, - sym_identifier, - [5037] = 2, - ACTIONS(726), 1, - sym_string_body, - ACTIONS(728), 1, - sym_raw_string_end, - [5044] = 2, - ACTIONS(686), 1, + [5052] = 2, + ACTIONS(720), 1, + sym__string_body, + ACTIONS(722), 1, + sym__raw_string_end, + [5059] = 2, + ACTIONS(668), 1, anon_sym_LBRACE, - STATE(190), 1, + STATE(105), 1, sym__braced_expr, - [5051] = 2, - ACTIONS(730), 1, + [5066] = 1, + ACTIONS(718), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [5071] = 2, + ACTIONS(724), 1, sym_identifier, - STATE(76), 1, + STATE(84), 1, sym_assignment, - [5058] = 2, - ACTIONS(732), 1, + [5078] = 2, + ACTIONS(726), 1, sym_identifier, - ACTIONS(734), 1, + ACTIONS(728), 1, anon_sym_QMARK, - [5065] = 2, - ACTIONS(736), 1, + [5085] = 1, + ACTIONS(730), 2, + sym__newline, + aux_sym_comment_token1, + [5090] = 1, + ACTIONS(732), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [5095] = 2, + ACTIONS(734), 1, sym_identifier, - ACTIONS(738), 1, + ACTIONS(736), 1, anon_sym_shell, - [5072] = 2, + [5102] = 2, + ACTIONS(690), 1, + anon_sym_LBRACE, + STATE(185), 1, + sym__braced_expr, + [5109] = 2, + ACTIONS(738), 1, + sym__string_body, ACTIONS(740), 1, - sym_string_body, + sym__raw_string_end, + [5116] = 2, + ACTIONS(690), 1, + anon_sym_LBRACE, + STATE(155), 1, + sym__braced_expr, + [5123] = 2, ACTIONS(742), 1, - sym_raw_string_end, - [5079] = 2, - ACTIONS(682), 1, + sym__string_body, + ACTIONS(744), 1, + sym__raw_string_end, + [5130] = 2, + ACTIONS(707), 1, anon_sym_LBRACE, - STATE(227), 1, + STATE(241), 1, sym__braced_expr, - [5086] = 2, - ACTIONS(682), 1, + [5137] = 2, + ACTIONS(707), 1, anon_sym_LBRACE, - STATE(189), 1, + STATE(179), 1, sym__braced_expr, - [5093] = 1, - ACTIONS(744), 2, - sym__newline, - aux_sym_comment_token1, - [5098] = 1, - ACTIONS(746), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [5103] = 1, - ACTIONS(695), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [5108] = 2, + [5144] = 2, + ACTIONS(746), 1, + sym__string_body, ACTIONS(748), 1, - sym_string_body, - ACTIONS(750), 1, - sym_raw_string_end, - [5115] = 2, - ACTIONS(699), 1, + sym__raw_string_end, + [5151] = 2, + ACTIONS(676), 1, anon_sym_LBRACE, STATE(106), 1, sym__braced_expr, - [5122] = 2, - ACTIONS(752), 1, - sym_string_body, - ACTIONS(754), 1, - sym_raw_string_end, - [5129] = 2, - ACTIONS(707), 1, + [5158] = 2, + ACTIONS(676), 1, anon_sym_LBRACE, - STATE(108), 1, + STATE(99), 1, sym__braced_expr, - [5136] = 2, - ACTIONS(699), 1, + [5165] = 2, + ACTIONS(668), 1, anon_sym_LBRACE, - STATE(70), 1, + STATE(104), 1, sym__braced_expr, - [5143] = 2, + [5172] = 2, + ACTIONS(750), 1, + sym__string_body, + ACTIONS(752), 1, + sym__raw_string_end, + [5179] = 1, + ACTIONS(754), 1, + anon_sym_COLON, + [5183] = 1, ACTIONS(756), 1, - sym_string_body, + sym_identifier, + [5187] = 1, ACTIONS(758), 1, - sym_raw_string_end, - [5150] = 2, - ACTIONS(707), 1, - anon_sym_LBRACE, - STATE(85), 1, - sym__braced_expr, - [5157] = 2, - ACTIONS(686), 1, - anon_sym_LBRACE, - STATE(156), 1, - sym__braced_expr, - [5164] = 1, + anon_sym_RPAREN, + [5191] = 1, + ACTIONS(554), 1, + sym__newline, + [5195] = 1, ACTIONS(760), 1, - sym_identifier, - [5168] = 1, + anon_sym_RBRACE_RBRACE, + [5199] = 1, ACTIONS(762), 1, - anon_sym_COLON, - [5172] = 1, + anon_sym_RPAREN, + [5203] = 1, ACTIONS(764), 1, - sym_raw_string_end, - [5176] = 1, + anon_sym_RBRACE, + [5207] = 1, ACTIONS(766), 1, - anon_sym_COLON_EQ, - [5180] = 1, + sym__newline, + [5211] = 1, ACTIONS(768), 1, - anon_sym_RPAREN, - [5184] = 1, + anon_sym_RBRACE_RBRACE, + [5215] = 1, ACTIONS(770), 1, - anon_sym_LBRACE, - [5188] = 1, + anon_sym_COLON_EQ, + [5219] = 1, ACTIONS(772), 1, - anon_sym_RBRACE_RBRACE, - [5192] = 1, - ACTIONS(774), 1, anon_sym_RPAREN, - [5196] = 1, + [5223] = 1, + ACTIONS(774), 1, + sym__raw_string_end, + [5227] = 1, ACTIONS(776), 1, - anon_sym_RBRACE, - [5200] = 1, - ACTIONS(542), 1, - anon_sym_COLON, - [5204] = 1, + sym__raw_string_end, + [5231] = 1, + ACTIONS(376), 1, + anon_sym_COLON_EQ, + [5235] = 1, ACTIONS(778), 1, sym_identifier, - [5208] = 1, + [5239] = 1, ACTIONS(780), 1, - sym_raw_string_end, - [5212] = 1, + anon_sym_RPAREN, + [5243] = 1, ACTIONS(782), 1, - sym_raw_string_end, - [5216] = 1, - ACTIONS(684), 1, - anon_sym_if, - [5220] = 1, - ACTIONS(784), 1, anon_sym_RPAREN, - [5224] = 1, + [5247] = 1, + ACTIONS(784), 1, + anon_sym_RBRACE, + [5251] = 1, ACTIONS(786), 1, - anon_sym_RPAREN, - [5228] = 1, + anon_sym_LBRACK, + [5255] = 1, ACTIONS(788), 1, - anon_sym_RPAREN, - [5232] = 1, + anon_sym_RBRACK, + [5259] = 1, + ACTIONS(563), 1, + anon_sym_COLON, + [5263] = 1, ACTIONS(790), 1, - anon_sym_RBRACE, - [5236] = 1, + anon_sym_RBRACK, + [5267] = 1, ACTIONS(792), 1, - anon_sym_LBRACK, - [5240] = 1, - ACTIONS(794), 1, sym_identifier, - [5244] = 1, + [5271] = 1, + ACTIONS(794), 1, + anon_sym_LBRACE, + [5275] = 1, ACTIONS(796), 1, - sym__newline, - [5248] = 1, + sym__raw_string_end, + [5279] = 1, ACTIONS(798), 1, anon_sym_RBRACE, - [5252] = 1, + [5283] = 1, ACTIONS(800), 1, - sym__newline, - [5256] = 1, + anon_sym_COLON_EQ, + [5287] = 1, ACTIONS(802), 1, - sym__newline, - [5260] = 1, + sym_identifier, + [5291] = 1, ACTIONS(804), 1, - sym_raw_string_end, - [5264] = 1, + sym__newline, + [5295] = 1, ACTIONS(806), 1, anon_sym_RPAREN, - [5268] = 1, + [5299] = 1, ACTIONS(808), 1, - sym__newline, - [5272] = 1, - ACTIONS(508), 1, - sym__newline, - [5276] = 1, + anon_sym_COLON, + [5303] = 1, ACTIONS(810), 1, - anon_sym_RBRACE_RBRACE, - [5280] = 1, - ACTIONS(812), 1, anon_sym_RPAREN, - [5284] = 1, + [5307] = 1, + ACTIONS(812), 1, + anon_sym_RBRACE, + [5311] = 1, ACTIONS(814), 1, - anon_sym_COLON, - [5288] = 1, + sym__newline, + [5315] = 1, ACTIONS(816), 1, - anon_sym_RPAREN, - [5292] = 1, + anon_sym_COLON, + [5319] = 1, ACTIONS(818), 1, - anon_sym_RBRACE, - [5296] = 1, + sym__raw_string_end, + [5323] = 1, + ACTIONS(572), 1, + anon_sym_COLON, + [5327] = 1, ACTIONS(820), 1, - sym_identifier, - [5300] = 1, - ACTIONS(512), 1, - sym__newline, - [5304] = 1, + anon_sym_RPAREN, + [5331] = 1, ACTIONS(822), 1, anon_sym_RBRACK, - [5308] = 1, + [5335] = 1, ACTIONS(824), 1, - sym__newline, - [5312] = 1, + sym__raw_string_end, + [5339] = 1, ACTIONS(826), 1, - sym_identifier, - [5316] = 1, + sym__newline, + [5343] = 1, + ACTIONS(688), 1, + anon_sym_if, + [5347] = 1, ACTIONS(828), 1, - anon_sym_RBRACK, - [5320] = 1, + ts_builtin_sym_end, + [5351] = 1, ACTIONS(830), 1, - sym_raw_string_end, - [5324] = 1, - ACTIONS(378), 1, - anon_sym_COLON_EQ, - [5328] = 1, + sym__newline, + [5355] = 1, ACTIONS(832), 1, - anon_sym_COLON_EQ, - [5332] = 1, + sym__newline, + [5359] = 1, + ACTIONS(666), 1, + anon_sym_if, + [5363] = 1, ACTIONS(834), 1, - anon_sym_RBRACK, - [5336] = 1, - ACTIONS(836), 1, sym__newline, - [5340] = 1, + [5367] = 1, + ACTIONS(836), 1, + sym_identifier, + [5371] = 1, ACTIONS(838), 1, - ts_builtin_sym_end, - [5344] = 1, - ACTIONS(705), 1, - anon_sym_if, - [5348] = 1, + sym_identifier, + [5375] = 1, ACTIONS(840), 1, sym__newline, - [5352] = 1, - ACTIONS(842), 1, + [5379] = 1, + ACTIONS(674), 1, + anon_sym_if, + [5383] = 1, + ACTIONS(527), 1, sym__newline, - [5356] = 1, - ACTIONS(844), 1, - sym_identifier, - [5360] = 1, - ACTIONS(846), 1, + [5387] = 1, + ACTIONS(842), 1, sym_identifier, - [5364] = 1, - ACTIONS(697), 1, - anon_sym_if, - [5368] = 1, - ACTIONS(848), 1, - anon_sym_COLON, - [5372] = 1, - ACTIONS(850), 1, + [5391] = 1, + ACTIONS(844), 1, anon_sym_RBRACK, - [5376] = 1, - ACTIONS(852), 1, + [5395] = 1, + ACTIONS(846), 1, sym_identifier, - [5380] = 1, - ACTIONS(559), 1, - anon_sym_COLON, - [5384] = 1, - ACTIONS(680), 1, + [5399] = 1, + ACTIONS(705), 1, anon_sym_if, }; @@ -6577,8 +6600,8 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(20)] = 838, [SMALL_STATE(21)] = 877, [SMALL_STATE(22)] = 916, - [SMALL_STATE(23)] = 955, - [SMALL_STATE(24)] = 994, + [SMALL_STATE(23)] = 943, + [SMALL_STATE(24)] = 982, [SMALL_STATE(25)] = 1021, [SMALL_STATE(26)] = 1060, [SMALL_STATE(27)] = 1099, @@ -6591,742 +6614,740 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(34)] = 1360, [SMALL_STATE(35)] = 1399, [SMALL_STATE(36)] = 1435, - [SMALL_STATE(37)] = 1468, - [SMALL_STATE(38)] = 1501, - [SMALL_STATE(39)] = 1534, - [SMALL_STATE(40)] = 1567, - [SMALL_STATE(41)] = 1600, - [SMALL_STATE(42)] = 1617, - [SMALL_STATE(43)] = 1650, - [SMALL_STATE(44)] = 1683, - [SMALL_STATE(45)] = 1716, - [SMALL_STATE(46)] = 1749, - [SMALL_STATE(47)] = 1766, - [SMALL_STATE(48)] = 1785, - [SMALL_STATE(49)] = 1818, - [SMALL_STATE(50)] = 1835, + [SMALL_STATE(37)] = 1452, + [SMALL_STATE(38)] = 1485, + [SMALL_STATE(39)] = 1504, + [SMALL_STATE(40)] = 1521, + [SMALL_STATE(41)] = 1538, + [SMALL_STATE(42)] = 1571, + [SMALL_STATE(43)] = 1604, + [SMALL_STATE(44)] = 1621, + [SMALL_STATE(45)] = 1654, + [SMALL_STATE(46)] = 1687, + [SMALL_STATE(47)] = 1720, + [SMALL_STATE(48)] = 1753, + [SMALL_STATE(49)] = 1786, + [SMALL_STATE(50)] = 1819, [SMALL_STATE(51)] = 1852, [SMALL_STATE(52)] = 1885, [SMALL_STATE(53)] = 1918, - [SMALL_STATE(54)] = 1948, - [SMALL_STATE(55)] = 1966, + [SMALL_STATE(54)] = 1934, + [SMALL_STATE(55)] = 1952, [SMALL_STATE(56)] = 1982, [SMALL_STATE(57)] = 2000, - [SMALL_STATE(58)] = 2018, - [SMALL_STATE(59)] = 2034, - [SMALL_STATE(60)] = 2052, - [SMALL_STATE(61)] = 2074, - [SMALL_STATE(62)] = 2104, - [SMALL_STATE(63)] = 2120, - [SMALL_STATE(64)] = 2142, - [SMALL_STATE(65)] = 2158, - [SMALL_STATE(66)] = 2174, - [SMALL_STATE(67)] = 2204, + [SMALL_STATE(58)] = 2030, + [SMALL_STATE(59)] = 2060, + [SMALL_STATE(60)] = 2078, + [SMALL_STATE(61)] = 2094, + [SMALL_STATE(62)] = 2116, + [SMALL_STATE(63)] = 2146, + [SMALL_STATE(64)] = 2168, + [SMALL_STATE(65)] = 2184, + [SMALL_STATE(66)] = 2202, + [SMALL_STATE(67)] = 2218, [SMALL_STATE(68)] = 2234, [SMALL_STATE(69)] = 2250, [SMALL_STATE(70)] = 2266, - [SMALL_STATE(71)] = 2286, - [SMALL_STATE(72)] = 2302, - [SMALL_STATE(73)] = 2318, - [SMALL_STATE(74)] = 2334, - [SMALL_STATE(75)] = 2350, + [SMALL_STATE(71)] = 2282, + [SMALL_STATE(72)] = 2298, + [SMALL_STATE(73)] = 2316, + [SMALL_STATE(74)] = 2332, + [SMALL_STATE(75)] = 2352, [SMALL_STATE(76)] = 2368, [SMALL_STATE(77)] = 2384, [SMALL_STATE(78)] = 2400, [SMALL_STATE(79)] = 2416, - [SMALL_STATE(80)] = 2434, - [SMALL_STATE(81)] = 2450, - [SMALL_STATE(82)] = 2476, - [SMALL_STATE(83)] = 2492, - [SMALL_STATE(84)] = 2508, - [SMALL_STATE(85)] = 2524, - [SMALL_STATE(86)] = 2542, - [SMALL_STATE(87)] = 2558, - [SMALL_STATE(88)] = 2574, - [SMALL_STATE(89)] = 2590, - [SMALL_STATE(90)] = 2606, - [SMALL_STATE(91)] = 2626, - [SMALL_STATE(92)] = 2642, - [SMALL_STATE(93)] = 2658, - [SMALL_STATE(94)] = 2674, - [SMALL_STATE(95)] = 2690, - [SMALL_STATE(96)] = 2706, - [SMALL_STATE(97)] = 2722, - [SMALL_STATE(98)] = 2738, - [SMALL_STATE(99)] = 2754, - [SMALL_STATE(100)] = 2780, - [SMALL_STATE(101)] = 2796, - [SMALL_STATE(102)] = 2812, - [SMALL_STATE(103)] = 2828, - [SMALL_STATE(104)] = 2848, + [SMALL_STATE(80)] = 2432, + [SMALL_STATE(81)] = 2448, + [SMALL_STATE(82)] = 2464, + [SMALL_STATE(83)] = 2480, + [SMALL_STATE(84)] = 2500, + [SMALL_STATE(85)] = 2516, + [SMALL_STATE(86)] = 2532, + [SMALL_STATE(87)] = 2550, + [SMALL_STATE(88)] = 2566, + [SMALL_STATE(89)] = 2582, + [SMALL_STATE(90)] = 2598, + [SMALL_STATE(91)] = 2614, + [SMALL_STATE(92)] = 2630, + [SMALL_STATE(93)] = 2656, + [SMALL_STATE(94)] = 2672, + [SMALL_STATE(95)] = 2688, + [SMALL_STATE(96)] = 2704, + [SMALL_STATE(97)] = 2720, + [SMALL_STATE(98)] = 2736, + [SMALL_STATE(99)] = 2752, + [SMALL_STATE(100)] = 2772, + [SMALL_STATE(101)] = 2788, + [SMALL_STATE(102)] = 2804, + [SMALL_STATE(103)] = 2820, + [SMALL_STATE(104)] = 2846, [SMALL_STATE(105)] = 2864, - [SMALL_STATE(106)] = 2879, - [SMALL_STATE(107)] = 2894, - [SMALL_STATE(108)] = 2907, - [SMALL_STATE(109)] = 2920, + [SMALL_STATE(106)] = 2877, + [SMALL_STATE(107)] = 2892, + [SMALL_STATE(108)] = 2905, + [SMALL_STATE(109)] = 2934, [SMALL_STATE(110)] = 2949, - [SMALL_STATE(111)] = 2967, - [SMALL_STATE(112)] = 2981, - [SMALL_STATE(113)] = 3007, - [SMALL_STATE(114)] = 3021, - [SMALL_STATE(115)] = 3035, - [SMALL_STATE(116)] = 3053, - [SMALL_STATE(117)] = 3069, - [SMALL_STATE(118)] = 3081, - [SMALL_STATE(119)] = 3095, - [SMALL_STATE(120)] = 3109, - [SMALL_STATE(121)] = 3125, - [SMALL_STATE(122)] = 3139, - [SMALL_STATE(123)] = 3155, - [SMALL_STATE(124)] = 3169, + [SMALL_STATE(111)] = 2963, + [SMALL_STATE(112)] = 2977, + [SMALL_STATE(113)] = 2991, + [SMALL_STATE(114)] = 3017, + [SMALL_STATE(115)] = 3031, + [SMALL_STATE(116)] = 3045, + [SMALL_STATE(117)] = 3061, + [SMALL_STATE(118)] = 3075, + [SMALL_STATE(119)] = 3089, + [SMALL_STATE(120)] = 3103, + [SMALL_STATE(121)] = 3115, + [SMALL_STATE(122)] = 3129, + [SMALL_STATE(123)] = 3143, + [SMALL_STATE(124)] = 3157, [SMALL_STATE(125)] = 3183, - [SMALL_STATE(126)] = 3197, - [SMALL_STATE(127)] = 3217, - [SMALL_STATE(128)] = 3231, - [SMALL_STATE(129)] = 3245, - [SMALL_STATE(130)] = 3271, - [SMALL_STATE(131)] = 3285, - [SMALL_STATE(132)] = 3299, - [SMALL_STATE(133)] = 3313, - [SMALL_STATE(134)] = 3327, - [SMALL_STATE(135)] = 3339, - [SMALL_STATE(136)] = 3351, - [SMALL_STATE(137)] = 3363, + [SMALL_STATE(126)] = 3195, + [SMALL_STATE(127)] = 3211, + [SMALL_STATE(128)] = 3225, + [SMALL_STATE(129)] = 3237, + [SMALL_STATE(130)] = 3251, + [SMALL_STATE(131)] = 3271, + [SMALL_STATE(132)] = 3287, + [SMALL_STATE(133)] = 3305, + [SMALL_STATE(134)] = 3319, + [SMALL_STATE(135)] = 3333, + [SMALL_STATE(136)] = 3347, + [SMALL_STATE(137)] = 3365, [SMALL_STATE(138)] = 3377, - [SMALL_STATE(139)] = 3390, - [SMALL_STATE(140)] = 3413, - [SMALL_STATE(141)] = 3426, - [SMALL_STATE(142)] = 3447, - [SMALL_STATE(143)] = 3470, - [SMALL_STATE(144)] = 3483, - [SMALL_STATE(145)] = 3500, - [SMALL_STATE(146)] = 3517, - [SMALL_STATE(147)] = 3540, - [SMALL_STATE(148)] = 3561, - [SMALL_STATE(149)] = 3582, - [SMALL_STATE(150)] = 3595, + [SMALL_STATE(139)] = 3398, + [SMALL_STATE(140)] = 3419, + [SMALL_STATE(141)] = 3436, + [SMALL_STATE(142)] = 3459, + [SMALL_STATE(143)] = 3480, + [SMALL_STATE(144)] = 3501, + [SMALL_STATE(145)] = 3518, + [SMALL_STATE(146)] = 3531, + [SMALL_STATE(147)] = 3544, + [SMALL_STATE(148)] = 3567, + [SMALL_STATE(149)] = 3580, + [SMALL_STATE(150)] = 3593, [SMALL_STATE(151)] = 3616, [SMALL_STATE(152)] = 3629, [SMALL_STATE(153)] = 3649, - [SMALL_STATE(154)] = 3662, - [SMALL_STATE(155)] = 3677, - [SMALL_STATE(156)] = 3690, - [SMALL_STATE(157)] = 3703, - [SMALL_STATE(158)] = 3720, - [SMALL_STATE(159)] = 3735, - [SMALL_STATE(160)] = 3754, - [SMALL_STATE(161)] = 3769, + [SMALL_STATE(154)] = 3664, + [SMALL_STATE(155)] = 3679, + [SMALL_STATE(156)] = 3692, + [SMALL_STATE(157)] = 3709, + [SMALL_STATE(158)] = 3724, + [SMALL_STATE(159)] = 3739, + [SMALL_STATE(160)] = 3758, + [SMALL_STATE(161)] = 3773, [SMALL_STATE(162)] = 3788, - [SMALL_STATE(163)] = 3807, - [SMALL_STATE(164)] = 3826, - [SMALL_STATE(165)] = 3837, + [SMALL_STATE(163)] = 3803, + [SMALL_STATE(164)] = 3818, + [SMALL_STATE(165)] = 3833, [SMALL_STATE(166)] = 3848, [SMALL_STATE(167)] = 3863, - [SMALL_STATE(168)] = 3875, - [SMALL_STATE(169)] = 3883, - [SMALL_STATE(170)] = 3899, - [SMALL_STATE(171)] = 3913, - [SMALL_STATE(172)] = 3923, - [SMALL_STATE(173)] = 3937, - [SMALL_STATE(174)] = 3951, - [SMALL_STATE(175)] = 3963, - [SMALL_STATE(176)] = 3973, - [SMALL_STATE(177)] = 3987, - [SMALL_STATE(178)] = 4001, - [SMALL_STATE(179)] = 4017, - [SMALL_STATE(180)] = 4031, - [SMALL_STATE(181)] = 4043, - [SMALL_STATE(182)] = 4057, - [SMALL_STATE(183)] = 4071, - [SMALL_STATE(184)] = 4083, - [SMALL_STATE(185)] = 4097, - [SMALL_STATE(186)] = 4111, - [SMALL_STATE(187)] = 4123, - [SMALL_STATE(188)] = 4137, - [SMALL_STATE(189)] = 4147, - [SMALL_STATE(190)] = 4159, - [SMALL_STATE(191)] = 4167, - [SMALL_STATE(192)] = 4175, - [SMALL_STATE(193)] = 4189, - [SMALL_STATE(194)] = 4201, - [SMALL_STATE(195)] = 4215, - [SMALL_STATE(196)] = 4223, - [SMALL_STATE(197)] = 4230, - [SMALL_STATE(198)] = 4237, - [SMALL_STATE(199)] = 4244, - [SMALL_STATE(200)] = 4251, - [SMALL_STATE(201)] = 4258, - [SMALL_STATE(202)] = 4271, - [SMALL_STATE(203)] = 4278, - [SMALL_STATE(204)] = 4285, - [SMALL_STATE(205)] = 4298, - [SMALL_STATE(206)] = 4311, - [SMALL_STATE(207)] = 4322, - [SMALL_STATE(208)] = 4335, - [SMALL_STATE(209)] = 4348, - [SMALL_STATE(210)] = 4359, - [SMALL_STATE(211)] = 4370, - [SMALL_STATE(212)] = 4381, - [SMALL_STATE(213)] = 4392, - [SMALL_STATE(214)] = 4401, - [SMALL_STATE(215)] = 4414, - [SMALL_STATE(216)] = 4421, - [SMALL_STATE(217)] = 4434, - [SMALL_STATE(218)] = 4441, - [SMALL_STATE(219)] = 4448, - [SMALL_STATE(220)] = 4459, - [SMALL_STATE(221)] = 4470, - [SMALL_STATE(222)] = 4479, - [SMALL_STATE(223)] = 4486, - [SMALL_STATE(224)] = 4497, - [SMALL_STATE(225)] = 4508, - [SMALL_STATE(226)] = 4515, - [SMALL_STATE(227)] = 4526, - [SMALL_STATE(228)] = 4533, - [SMALL_STATE(229)] = 4546, - [SMALL_STATE(230)] = 4553, - [SMALL_STATE(231)] = 4560, - [SMALL_STATE(232)] = 4573, - [SMALL_STATE(233)] = 4580, - [SMALL_STATE(234)] = 4591, - [SMALL_STATE(235)] = 4604, - [SMALL_STATE(236)] = 4617, - [SMALL_STATE(237)] = 4630, - [SMALL_STATE(238)] = 4637, - [SMALL_STATE(239)] = 4648, - [SMALL_STATE(240)] = 4655, - [SMALL_STATE(241)] = 4668, - [SMALL_STATE(242)] = 4677, - [SMALL_STATE(243)] = 4684, - [SMALL_STATE(244)] = 4691, - [SMALL_STATE(245)] = 4698, - [SMALL_STATE(246)] = 4705, - [SMALL_STATE(247)] = 4716, - [SMALL_STATE(248)] = 4729, - [SMALL_STATE(249)] = 4735, - [SMALL_STATE(250)] = 4741, - [SMALL_STATE(251)] = 4749, - [SMALL_STATE(252)] = 4757, - [SMALL_STATE(253)] = 4767, - [SMALL_STATE(254)] = 4777, - [SMALL_STATE(255)] = 4787, - [SMALL_STATE(256)] = 4797, - [SMALL_STATE(257)] = 4807, - [SMALL_STATE(258)] = 4817, - [SMALL_STATE(259)] = 4827, - [SMALL_STATE(260)] = 4837, - [SMALL_STATE(261)] = 4843, - [SMALL_STATE(262)] = 4853, - [SMALL_STATE(263)] = 4863, - [SMALL_STATE(264)] = 4873, - [SMALL_STATE(265)] = 4879, - [SMALL_STATE(266)] = 4885, - [SMALL_STATE(267)] = 4891, - [SMALL_STATE(268)] = 4897, - [SMALL_STATE(269)] = 4903, - [SMALL_STATE(270)] = 4909, - [SMALL_STATE(271)] = 4919, - [SMALL_STATE(272)] = 4925, - [SMALL_STATE(273)] = 4931, - [SMALL_STATE(274)] = 4937, - [SMALL_STATE(275)] = 4947, - [SMALL_STATE(276)] = 4953, - [SMALL_STATE(277)] = 4963, - [SMALL_STATE(278)] = 4973, - [SMALL_STATE(279)] = 4983, - [SMALL_STATE(280)] = 4993, - [SMALL_STATE(281)] = 4999, - [SMALL_STATE(282)] = 5005, - [SMALL_STATE(283)] = 5013, - [SMALL_STATE(284)] = 5019, - [SMALL_STATE(285)] = 5025, - [SMALL_STATE(286)] = 5031, - [SMALL_STATE(287)] = 5037, - [SMALL_STATE(288)] = 5044, - [SMALL_STATE(289)] = 5051, - [SMALL_STATE(290)] = 5058, - [SMALL_STATE(291)] = 5065, - [SMALL_STATE(292)] = 5072, - [SMALL_STATE(293)] = 5079, - [SMALL_STATE(294)] = 5086, - [SMALL_STATE(295)] = 5093, - [SMALL_STATE(296)] = 5098, - [SMALL_STATE(297)] = 5103, - [SMALL_STATE(298)] = 5108, - [SMALL_STATE(299)] = 5115, - [SMALL_STATE(300)] = 5122, - [SMALL_STATE(301)] = 5129, - [SMALL_STATE(302)] = 5136, - [SMALL_STATE(303)] = 5143, - [SMALL_STATE(304)] = 5150, - [SMALL_STATE(305)] = 5157, - [SMALL_STATE(306)] = 5164, - [SMALL_STATE(307)] = 5168, - [SMALL_STATE(308)] = 5172, - [SMALL_STATE(309)] = 5176, - [SMALL_STATE(310)] = 5180, - [SMALL_STATE(311)] = 5184, - [SMALL_STATE(312)] = 5188, - [SMALL_STATE(313)] = 5192, - [SMALL_STATE(314)] = 5196, - [SMALL_STATE(315)] = 5200, - [SMALL_STATE(316)] = 5204, - [SMALL_STATE(317)] = 5208, - [SMALL_STATE(318)] = 5212, - [SMALL_STATE(319)] = 5216, - [SMALL_STATE(320)] = 5220, - [SMALL_STATE(321)] = 5224, - [SMALL_STATE(322)] = 5228, - [SMALL_STATE(323)] = 5232, - [SMALL_STATE(324)] = 5236, - [SMALL_STATE(325)] = 5240, - [SMALL_STATE(326)] = 5244, - [SMALL_STATE(327)] = 5248, - [SMALL_STATE(328)] = 5252, - [SMALL_STATE(329)] = 5256, - [SMALL_STATE(330)] = 5260, - [SMALL_STATE(331)] = 5264, - [SMALL_STATE(332)] = 5268, - [SMALL_STATE(333)] = 5272, - [SMALL_STATE(334)] = 5276, - [SMALL_STATE(335)] = 5280, - [SMALL_STATE(336)] = 5284, - [SMALL_STATE(337)] = 5288, - [SMALL_STATE(338)] = 5292, - [SMALL_STATE(339)] = 5296, - [SMALL_STATE(340)] = 5300, - [SMALL_STATE(341)] = 5304, - [SMALL_STATE(342)] = 5308, - [SMALL_STATE(343)] = 5312, - [SMALL_STATE(344)] = 5316, - [SMALL_STATE(345)] = 5320, - [SMALL_STATE(346)] = 5324, - [SMALL_STATE(347)] = 5328, - [SMALL_STATE(348)] = 5332, - [SMALL_STATE(349)] = 5336, - [SMALL_STATE(350)] = 5340, - [SMALL_STATE(351)] = 5344, - [SMALL_STATE(352)] = 5348, - [SMALL_STATE(353)] = 5352, - [SMALL_STATE(354)] = 5356, - [SMALL_STATE(355)] = 5360, - [SMALL_STATE(356)] = 5364, - [SMALL_STATE(357)] = 5368, - [SMALL_STATE(358)] = 5372, - [SMALL_STATE(359)] = 5376, - [SMALL_STATE(360)] = 5380, - [SMALL_STATE(361)] = 5384, + [SMALL_STATE(168)] = 3882, + [SMALL_STATE(169)] = 3897, + [SMALL_STATE(170)] = 3910, + [SMALL_STATE(171)] = 3925, + [SMALL_STATE(172)] = 3936, + [SMALL_STATE(173)] = 3947, + [SMALL_STATE(174)] = 3966, + [SMALL_STATE(175)] = 3979, + [SMALL_STATE(176)] = 3998, + [SMALL_STATE(177)] = 4010, + [SMALL_STATE(178)] = 4020, + [SMALL_STATE(179)] = 4032, + [SMALL_STATE(180)] = 4044, + [SMALL_STATE(181)] = 4056, + [SMALL_STATE(182)] = 4068, + [SMALL_STATE(183)] = 4078, + [SMALL_STATE(184)] = 4094, + [SMALL_STATE(185)] = 4102, + [SMALL_STATE(186)] = 4110, + [SMALL_STATE(187)] = 4118, + [SMALL_STATE(188)] = 4130, + [SMALL_STATE(189)] = 4146, + [SMALL_STATE(190)] = 4158, + [SMALL_STATE(191)] = 4168, + [SMALL_STATE(192)] = 4182, + [SMALL_STATE(193)] = 4190, + [SMALL_STATE(194)] = 4204, + [SMALL_STATE(195)] = 4218, + [SMALL_STATE(196)] = 4232, + [SMALL_STATE(197)] = 4239, + [SMALL_STATE(198)] = 4250, + [SMALL_STATE(199)] = 4257, + [SMALL_STATE(200)] = 4270, + [SMALL_STATE(201)] = 4277, + [SMALL_STATE(202)] = 4290, + [SMALL_STATE(203)] = 4297, + [SMALL_STATE(204)] = 4310, + [SMALL_STATE(205)] = 4323, + [SMALL_STATE(206)] = 4334, + [SMALL_STATE(207)] = 4341, + [SMALL_STATE(208)] = 4352, + [SMALL_STATE(209)] = 4365, + [SMALL_STATE(210)] = 4378, + [SMALL_STATE(211)] = 4389, + [SMALL_STATE(212)] = 4402, + [SMALL_STATE(213)] = 4415, + [SMALL_STATE(214)] = 4424, + [SMALL_STATE(215)] = 4437, + [SMALL_STATE(216)] = 4450, + [SMALL_STATE(217)] = 4457, + [SMALL_STATE(218)] = 4464, + [SMALL_STATE(219)] = 4477, + [SMALL_STATE(220)] = 4484, + [SMALL_STATE(221)] = 4491, + [SMALL_STATE(222)] = 4502, + [SMALL_STATE(223)] = 4513, + [SMALL_STATE(224)] = 4522, + [SMALL_STATE(225)] = 4533, + [SMALL_STATE(226)] = 4544, + [SMALL_STATE(227)] = 4555, + [SMALL_STATE(228)] = 4566, + [SMALL_STATE(229)] = 4579, + [SMALL_STATE(230)] = 4592, + [SMALL_STATE(231)] = 4605, + [SMALL_STATE(232)] = 4612, + [SMALL_STATE(233)] = 4619, + [SMALL_STATE(234)] = 4626, + [SMALL_STATE(235)] = 4637, + [SMALL_STATE(236)] = 4648, + [SMALL_STATE(237)] = 4655, + [SMALL_STATE(238)] = 4666, + [SMALL_STATE(239)] = 4673, + [SMALL_STATE(240)] = 4680, + [SMALL_STATE(241)] = 4689, + [SMALL_STATE(242)] = 4696, + [SMALL_STATE(243)] = 4703, + [SMALL_STATE(244)] = 4710, + [SMALL_STATE(245)] = 4717, + [SMALL_STATE(246)] = 4724, + [SMALL_STATE(247)] = 4731, + [SMALL_STATE(248)] = 4738, + [SMALL_STATE(249)] = 4744, + [SMALL_STATE(250)] = 4750, + [SMALL_STATE(251)] = 4760, + [SMALL_STATE(252)] = 4768, + [SMALL_STATE(253)] = 4778, + [SMALL_STATE(254)] = 4784, + [SMALL_STATE(255)] = 4794, + [SMALL_STATE(256)] = 4804, + [SMALL_STATE(257)] = 4812, + [SMALL_STATE(258)] = 4818, + [SMALL_STATE(259)] = 4828, + [SMALL_STATE(260)] = 4834, + [SMALL_STATE(261)] = 4844, + [SMALL_STATE(262)] = 4854, + [SMALL_STATE(263)] = 4864, + [SMALL_STATE(264)] = 4870, + [SMALL_STATE(265)] = 4876, + [SMALL_STATE(266)] = 4886, + [SMALL_STATE(267)] = 4892, + [SMALL_STATE(268)] = 4902, + [SMALL_STATE(269)] = 4912, + [SMALL_STATE(270)] = 4918, + [SMALL_STATE(271)] = 4928, + [SMALL_STATE(272)] = 4934, + [SMALL_STATE(273)] = 4940, + [SMALL_STATE(274)] = 4946, + [SMALL_STATE(275)] = 4952, + [SMALL_STATE(276)] = 4958, + [SMALL_STATE(277)] = 4968, + [SMALL_STATE(278)] = 4978, + [SMALL_STATE(279)] = 4984, + [SMALL_STATE(280)] = 4990, + [SMALL_STATE(281)] = 4996, + [SMALL_STATE(282)] = 5004, + [SMALL_STATE(283)] = 5014, + [SMALL_STATE(284)] = 5024, + [SMALL_STATE(285)] = 5030, + [SMALL_STATE(286)] = 5040, + [SMALL_STATE(287)] = 5046, + [SMALL_STATE(288)] = 5052, + [SMALL_STATE(289)] = 5059, + [SMALL_STATE(290)] = 5066, + [SMALL_STATE(291)] = 5071, + [SMALL_STATE(292)] = 5078, + [SMALL_STATE(293)] = 5085, + [SMALL_STATE(294)] = 5090, + [SMALL_STATE(295)] = 5095, + [SMALL_STATE(296)] = 5102, + [SMALL_STATE(297)] = 5109, + [SMALL_STATE(298)] = 5116, + [SMALL_STATE(299)] = 5123, + [SMALL_STATE(300)] = 5130, + [SMALL_STATE(301)] = 5137, + [SMALL_STATE(302)] = 5144, + [SMALL_STATE(303)] = 5151, + [SMALL_STATE(304)] = 5158, + [SMALL_STATE(305)] = 5165, + [SMALL_STATE(306)] = 5172, + [SMALL_STATE(307)] = 5179, + [SMALL_STATE(308)] = 5183, + [SMALL_STATE(309)] = 5187, + [SMALL_STATE(310)] = 5191, + [SMALL_STATE(311)] = 5195, + [SMALL_STATE(312)] = 5199, + [SMALL_STATE(313)] = 5203, + [SMALL_STATE(314)] = 5207, + [SMALL_STATE(315)] = 5211, + [SMALL_STATE(316)] = 5215, + [SMALL_STATE(317)] = 5219, + [SMALL_STATE(318)] = 5223, + [SMALL_STATE(319)] = 5227, + [SMALL_STATE(320)] = 5231, + [SMALL_STATE(321)] = 5235, + [SMALL_STATE(322)] = 5239, + [SMALL_STATE(323)] = 5243, + [SMALL_STATE(324)] = 5247, + [SMALL_STATE(325)] = 5251, + [SMALL_STATE(326)] = 5255, + [SMALL_STATE(327)] = 5259, + [SMALL_STATE(328)] = 5263, + [SMALL_STATE(329)] = 5267, + [SMALL_STATE(330)] = 5271, + [SMALL_STATE(331)] = 5275, + [SMALL_STATE(332)] = 5279, + [SMALL_STATE(333)] = 5283, + [SMALL_STATE(334)] = 5287, + [SMALL_STATE(335)] = 5291, + [SMALL_STATE(336)] = 5295, + [SMALL_STATE(337)] = 5299, + [SMALL_STATE(338)] = 5303, + [SMALL_STATE(339)] = 5307, + [SMALL_STATE(340)] = 5311, + [SMALL_STATE(341)] = 5315, + [SMALL_STATE(342)] = 5319, + [SMALL_STATE(343)] = 5323, + [SMALL_STATE(344)] = 5327, + [SMALL_STATE(345)] = 5331, + [SMALL_STATE(346)] = 5335, + [SMALL_STATE(347)] = 5339, + [SMALL_STATE(348)] = 5343, + [SMALL_STATE(349)] = 5347, + [SMALL_STATE(350)] = 5351, + [SMALL_STATE(351)] = 5355, + [SMALL_STATE(352)] = 5359, + [SMALL_STATE(353)] = 5363, + [SMALL_STATE(354)] = 5367, + [SMALL_STATE(355)] = 5371, + [SMALL_STATE(356)] = 5375, + [SMALL_STATE(357)] = 5379, + [SMALL_STATE(358)] = 5383, + [SMALL_STATE(359)] = 5387, + [SMALL_STATE(360)] = 5391, + [SMALL_STATE(361)] = 5395, + [SMALL_STATE(362)] = 5399, }; 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}}, REDUCE(sym_source_file, 0), - [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109), - [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(359), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(290), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(291), + [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(361), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(291), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(292), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(352), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(351), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), [27] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [29] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(109), - [32] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(359), - [35] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(289), - [38] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(166), - [41] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(290), - [44] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(291), + [29] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(108), + [32] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(361), + [35] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(291), + [38] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(158), + [41] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(292), + [44] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(295), [47] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(355), [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(354), - [53] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(352), - [56] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(78), + [53] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(351), + [56] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(77), [59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2), - [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), [63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [83] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), - [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(38), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), + [83] = {.entry = {.count = 1, .reusable = false}}, SHIFT(123), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16), - [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(137), - [104] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(52), + [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(123), + [104] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(42), [107] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(16), - [110] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(34), + [110] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(33), [113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), - [115] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(212), - [118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(298), - [121] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(176), - [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [126] = {.entry = {.count = 1, .reusable = false}}, SHIFT(188), - [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [130] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12), - [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [115] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(226), + [118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(302), + [121] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(164), + [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), + [126] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [130] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), + [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), - [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [140] = {.entry = {.count = 1, .reusable = false}}, SHIFT(241), - [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), - [146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), - [152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 3, .production_id = 4), - [156] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 3, .production_id = 4), - [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 2, .production_id = 1), - [160] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 2, .production_id = 1), - [162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250), - [164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329), - [166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(179), - [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), - [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raw_string_literal, 2), - [178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), - [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), + [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 3, .production_id = 4), + [142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 3, .production_id = 4), + [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 2, .production_id = 1), + [150] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 2, .production_id = 1), + [152] = {.entry = {.count = 1, .reusable = false}}, SHIFT(190), + [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [156] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13), + [158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(256), + [164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(356), + [166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(31), + [168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(194), + [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), + [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), + [178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raw_string_literal, 2), + [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raw_string_literal, 3), - [186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_external_command, 2), [188] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2), - [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_external_command, 2), - [192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_raw_string_literal, 2), - [194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_raw_string_literal, 3), - [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_external_command, 3), - [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), - [200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe, 3), - [202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe, 3), - [204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe, 2), - [208] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe, 2), - [210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 3), - [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3, .production_id = 18), - [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(250), - [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(32), - [222] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(179), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_recipe_body_repeat1, 2), - [227] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(143), - [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4, .production_id = 27), - [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), - [234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 2), - [236] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 3, .production_id = 17), - [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 3, .production_id = 17), - [240] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 4, .production_id = 13), - [244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 4, .production_id = 13), - [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_item, 1), - [248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_item, 1), - [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 40), - [252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 40), - [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_body, 3, .production_id = 23), - [256] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_body, 3, .production_id = 23), - [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), - [260] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(351), - [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export, 2), - [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_export, 2), - [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 41), - [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 41), - [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_eol, 1), - [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_eol, 1), - [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 4, .production_id = 26), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 2), - [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 2), - [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 5, .production_id = 15), - [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 5, .production_id = 15), - [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 6, .production_id = 25), - [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 6, .production_id = 25), - [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe, 4), - [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe, 4), - [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shebang, 2), - [301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_shebang, 2), - [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 6, .production_id = 24), - [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 6, .production_id = 24), - [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias, 4, .production_id = 10), - [309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias, 4, .production_id = 10), - [311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), - [313] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(356), - [316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 3, .production_id = 5), - [318] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 3, .production_id = 5), - [320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_body, 4, .production_id = 30), - [322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_body, 4, .production_id = 30), - [324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 4, .production_id = 4), - [326] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 4, .production_id = 4), - [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 7, .production_id = 32), - [330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 7, .production_id = 32), - [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 3, .production_id = 1), - [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 3, .production_id = 1), - [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_body, 2), - [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_body, 2), - [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 3), - [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 3), - [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 7, .production_id = 34), - [346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 7, .production_id = 34), - [348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 38), - [350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 38), - [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 39), - [354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 39), - [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 9, .production_id = 43), - [358] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 9, .production_id = 43), - [360] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 4, .production_id = 26), - [362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), - [364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 9, .production_id = 44), - [366] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 9, .production_id = 44), - [368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__braced_expr, 3, .production_id = 35), - [370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__braced_expr, 3, .production_id = 35), - [372] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_expression_repeat1, 4, .production_id = 45), - [374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 4, .production_id = 45), - [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [382] = {.entry = {.count = 1, .reusable = false}}, SHIFT(163), - [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), - [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 2), - [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 2), + [190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(256), + [193] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(31), + [196] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(194), + [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_recipe_body_repeat1, 2), + [201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_recipe_body_repeat1, 2), SHIFT_REPEAT(146), + [204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_raw_string_literal, 3), + [206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_raw_string_literal, 2), + [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4, .production_id = 27), + [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe, 2), + [216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe, 2), + [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe, 3), + [222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe, 3), + [224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), + [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_external_command, 3), + [228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 3), + [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3, .production_id = 18), + [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_body, 4, .production_id = 30), + [234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_body, 4, .production_id = 30), + [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 5, .production_id = 15), + [238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 5, .production_id = 15), + [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 38), + [242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 38), + [244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 4, .production_id = 26), + [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 3, .production_id = 5), + [250] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 3, .production_id = 5), + [252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), + [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), + [256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(357), + [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_item, 1), + [261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_item, 1), + [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 39), + [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 39), + [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_eol, 1), + [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_eol, 1), + [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 40), + [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 40), + [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 8, .production_id = 41), + [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 8, .production_id = 41), + [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 9, .production_id = 43), + [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 9, .production_id = 43), + [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 7, .production_id = 34), + [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 7, .production_id = 34), + [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 9, .production_id = 44), + [289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 9, .production_id = 44), + [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 4, .production_id = 26), + [293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(255), + [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export, 2), + [297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_export, 2), + [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 7, .production_id = 32), + [301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 7, .production_id = 32), + [303] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(352), + [306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 4, .production_id = 13), + [308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 4, .production_id = 13), + [310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 3, .production_id = 1), + [312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 3, .production_id = 1), + [314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 3), + [316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 3), + [318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 6, .production_id = 25), + [320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 6, .production_id = 25), + [322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import, 2), + [324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import, 2), + [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_body, 3, .production_id = 23), + [330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_body, 3, .production_id = 23), + [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), + [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 2), + [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shebang, 2), + [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_shebang, 2), + [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe, 4), + [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe, 4), + [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias, 4, .production_id = 10), + [346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias, 4, .production_id = 10), + [348] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 3, .production_id = 17), + [350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 3, .production_id = 17), + [352] = {.entry = {.count = 1, .reusable = false}}, SHIFT(252), + [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 4, .production_id = 4), + [356] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module, 4, .production_id = 4), + [358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_body, 2), + [360] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_body, 2), + [362] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_setting, 6, .production_id = 24), + [364] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_setting, 6, .production_id = 24), + [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), + [368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 4, .production_id = 45), + [370] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_expression_repeat1, 4, .production_id = 45), + [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__braced_expr, 3, .production_id = 35), + [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), + [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [384] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__braced_expr, 3, .production_id = 35), + [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_external_command, 3), + [388] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 3), + [390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4, .production_id = 27), + [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), [394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 5, .production_id = 36), [396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 5, .production_id = 36), - [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [400] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4, .production_id = 27), - [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 6, .production_id = 42), - [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 6, .production_id = 42), - [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_inner, 1), - [416] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_inner, 3, .production_id = 19), - [418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_inner, 3, .production_id = 19), - [420] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3, .production_id = 18), - [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 3), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [428] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_external_command, 3), - [430] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_inner, 1), - [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [434] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_external_command, 2), - [436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), - [438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_line, 3), - [440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_line, 3), - [442] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), SHIFT_REPEAT(239), - [445] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), SHIFT_REPEAT(339), - [448] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), SHIFT_REPEAT(178), - [451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), - [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependencies, 1), - [465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_line, 1), - [467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_line, 1), - [469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependencies, 2), - [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [475] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_dependency_expression_repeat1, 1, .production_id = 21), - [477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 1, .production_id = 21), - [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_inner, 3, .production_id = 19), + [400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_inner, 3, .production_id = 19), + [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3, .production_id = 18), + [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 6, .production_id = 42), + [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 6, .production_id = 42), + [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), + [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), + [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 2), + [426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 2), + [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [430] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_external_command, 2), + [432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_inner, 1), + [434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_inner, 1), + [436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), + [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependencies, 1), + [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependencies, 2), + [458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_line, 3), + [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_line, 3), + [462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_line, 1), + [464] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_line, 1), + [466] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_dependency_expression_repeat1, 1, .production_id = 21), + [468] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dependency_expression_repeat1, 1, .production_id = 21), + [470] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), SHIFT_REPEAT(231), + [473] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), SHIFT_REPEAT(334), + [476] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), SHIFT_REPEAT(183), + [479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dependencies_repeat1, 2), [481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_line, 2), [483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_line, 2), - [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [493] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(319), - [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [500] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), SHIFT_REPEAT(164), - [503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), - [505] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), SHIFT_REPEAT(343), - [508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 4, .production_id = 6), - [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 3, .production_id = 2), - [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 3, .production_id = 6), - [516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 2, .production_id = 2), - [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, .production_id = 3), - [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, .production_id = 9), - [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3, .production_id = 14), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [532] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_line_repeat1, 2), SHIFT_REPEAT(32), - [535] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_line_repeat1, 2), SHIFT_REPEAT(170), - [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_recipe_line_repeat1, 2), - [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 1), - [542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), - [544] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_external_command_repeat1, 2), SHIFT_REPEAT(29), - [547] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_external_command_repeat1, 2), SHIFT_REPEAT(172), - [550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_external_command_repeat1, 2), - [552] = {.entry = {.count = 1, .reusable = false}}, SHIFT(170), - [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(361), - [559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 1), - [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_recipe_repeat1, 2), - [575] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_recipe_repeat1, 2), SHIFT_REPEAT(355), - [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [582] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), - [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [588] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_setting_repeat1, 2, .production_id = 33), SHIFT_REPEAT(167), - [591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_setting_repeat1, 2, .production_id = 33), - [593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), - [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), - [605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [609] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 4, .production_id = 22), - [611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency_expression, 4, .production_id = 28), - [613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_setting_repeat1, 2, .production_id = 31), - [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), - [623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency_expression, 3, .production_id = 20), - [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition, 1), - [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), - [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [659] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(233), - [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), - [664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency, 1), - [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [668] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency, 1, .production_id = 8), - [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [672] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_line_prefix, 1), - [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_line_prefix, 1), - [676] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3), - [678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3), - [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence, 1), - [692] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sequence_repeat1, 2), SHIFT_REPEAT(30), - [695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sequence_repeat1, 2), - [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), - [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), + [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [501] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_external_command_repeat1, 2), SHIFT_REPEAT(24), + [504] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_external_command_repeat1, 2), SHIFT_REPEAT(263), + [507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_external_command_repeat1, 2), + [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [511] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 3, .production_id = 6), + [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 4, .production_id = 6), + [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [531] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(348), + [534] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), SHIFT_REPEAT(172), + [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), + [539] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), SHIFT_REPEAT(308), + [542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, .production_id = 9), + [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, .production_id = 3), + [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 2, .production_id = 2), + [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), + [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 3, .production_id = 2), + [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_recipe_repeat1, 2), + [558] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_recipe_repeat1, 2), SHIFT_REPEAT(355), + [561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 1), + [563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), + [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), + [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), + [569] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(362), + [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 1), + [574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 4, .production_id = 22), + [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3, .production_id = 14), + [578] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_setting_repeat1, 2, .production_id = 33), SHIFT_REPEAT(189), + [581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_setting_repeat1, 2, .production_id = 33), + [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [587] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), + [589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [591] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_line_repeat1, 2), SHIFT_REPEAT(31), + [594] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_recipe_line_repeat1, 2), SHIFT_REPEAT(193), + [597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_recipe_line_repeat1, 2), + [599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(193), + [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency, 1), + [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), + [613] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(205), + [616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), + [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_setting_repeat1, 2, .production_id = 31), + [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency_expression, 4, .production_id = 28), + [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition, 1), + [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [652] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency, 1, .production_id = 8), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependency_expression, 3, .production_id = 20), + [664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 4, .production_id = 11), + [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [670] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3), + [672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3), + [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 5, .production_id = 16), + [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [684] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_recipe_line_prefix, 1), + [686] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_line_prefix, 1), + [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence, 2), + [696] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command_body, 1), + [698] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 12), SHIFT_REPEAT(359), + [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 12), + [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence, 1), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [709] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 12), SHIFT_REPEAT(325), - [712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 12), - [714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 4, .production_id = 11), - [716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence, 2), - [724] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 5, .production_id = 16), - [726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), - [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), - [732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), - [738] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309), - [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), - [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), - [746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 11), - [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), - [750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), - [754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), - [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition, 3), - [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 5, .production_id = 6), - [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), - [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_parameter, 2, .production_id = 7), - [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 4, .production_id = 2), - [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), - [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [838] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [715] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sequence_repeat1, 2), SHIFT_REPEAT(29), + [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sequence_repeat1, 2), + [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), + [730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), + [732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 11), + [734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(188), + [736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(316), + [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), + [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), + [754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_parameter, 2, .production_id = 7), + [756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 5, .production_id = 6), + [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), + [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition, 3), + [796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), + [802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_recipe_header, 4, .production_id = 2), + [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [828] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), }; #ifdef __cplusplus diff --git a/src/scanner.c b/src/scanner.c index 22709f4..c5eca1a 100644 --- a/src/scanner.c +++ b/src/scanner.c @@ -9,19 +9,26 @@ #error "expected assertions to be enabled" #endif +// #define DEBUG_PRINT +#ifdef DEBUG_PRINT +#define printdbg(...) printf(__VA_ARGS__) +#else +#define printdbg(...) +#endif + #define SCAN_SIZE sizeof(Scanner) // Make our array the rest of the allowed buffer size #define ARR_SIZE TREE_SITTER_SERIALIZATION_BUFFER_SIZE - SCAN_SIZE -#define IS_SINGLE false -#define IS_TRIPLE true - // Our scanner is always stored in a buffer of length // TREE_SITTER_SERIALIZATION_BUFFER_SIZE. We use the rest of the data as the // buffer for our dynamic array. #define ARR_PTR(state_ptr) ((uint8_t *)state_ptr + SCAN_SIZE) +#define IS_SINGLE false +#define IS_TRIPLE true + enum TokenType { INDENT, // start of indentation DEDENT, // end of indentation @@ -52,16 +59,16 @@ typedef struct Scanner { char *arr_ptr(Scanner *state) { return ((char *)state + SCAN_SIZE); } void print_arr(Scanner *state, char *cmt) { - printf(" %s: ", cmt); + printdbg(" %s: ", cmt); for (int i = 0; i < 20; ++i) { - printf("%02x ", ((char *)state)[i]); + printdbg("%02x ", ((char *)state)[i]); } - printf(" \n"); + printdbg(" \n"); } void push(Scanner *state, char c, IsTriple is_triple) { - printf(" pushing %c triple %d len %zu ptr %p\n", c, is_triple, - state->len, ARR_PTR(state)); + printdbg(" pushing %c triple %d len %zu ptr %p\n", c, is_triple, + state->len, ARR_PTR(state)); assert(c < SCHAR_MAX); assert(state->len <= ARR_SIZE); // print_arr(state, "before push"); @@ -73,8 +80,8 @@ Delimiter pop(Scanner *state) { assert(state->len > 0); // print_arr(state, "before pop "); Delimiter popped = arr_ptr(state)[--state->len]; - printf(" popped %c triple %d len %zu ptr %p\n", popped, - popped > SCHAR_MAX, state->len, arr_ptr(state)); + printdbg(" popped %c triple %d len %zu ptr %p\n", popped, + popped > SCHAR_MAX, state->len, arr_ptr(state)); // print_arr(state, "after pop "); return popped; } @@ -147,7 +154,8 @@ bool scan_string_start(TSLexer *lexer, Scanner *state, const char start_char) { advance(lexer); } - // We found a single quote + // We did find a triple quoted string + mark_end(lexer); push(state, start_char, IS_TRIPLE); return true; } @@ -163,7 +171,7 @@ bool scan_string_content(TSLexer *lexer, Scanner *state) { end_char -= SCHAR_MAX; } - printf(" end char %c is triple %d \n", end_char, is_triple); + printdbg(" end char %c is triple %d \n", end_char, is_triple); bool backslash_escapes = false; bool brace_escapees = false; @@ -177,13 +185,13 @@ bool scan_string_content(TSLexer *lexer, Scanner *state) { break; case '\'': end_symbol = RAW_STRING_END; - brace_escapees = true; break; case '`': end_symbol = COMMAND_END; + brace_escapees = true; break; default: - printf(" end char: %c len: %zu\n", end_char, state->len); + printdbg(" end char: %c len: %zu\n", end_char, state->len); assert(false); } @@ -193,17 +201,33 @@ bool scan_string_content(TSLexer *lexer, Scanner *state) { while (!eof(lexer)) { if (backslash_escapes && lexer->lookahead == '\\') { // detected escape, stop parsing - printf(" return escape"); + printdbg(" return escape\n"); mark_end(lexer); lexer->result_symbol = end_body; return has_content; } if (brace_escapees && lexer->lookahead == '{') { - printf(" return start interp"); mark_end(lexer); - lexer->result_symbol = end_body; - return has_content; + + unsigned count = 0; + while (lexer->lookahead == '{') { + advance(lexer); + if (count == 2) { + mark_end(lexer); + } + ++count; + } + + if (count >= 2 && count < 4) { + // 2 brackets make an interpolation, 4 escapes one + printdbg(" return at the start of interop\n"); + lexer->result_symbol = end_body; + return has_content; + } + + // no escape found, continue matching a string + mark_end(lexer); } if (lexer->lookahead == end_char) { @@ -214,7 +238,7 @@ bool scan_string_content(TSLexer *lexer, Scanner *state) { advance(lexer); if (lexer->lookahead != end_char) { - printf(" return found triple"); + printdbg(" return found triple"); pop(state); mark_end(lexer); lexer->result_symbol = end_body; @@ -232,14 +256,14 @@ bool scan_string_content(TSLexer *lexer, Scanner *state) { lexer->result_symbol = end_symbol; } - printf(" return found single"); + printdbg(" return found single"); return true; } advance(lexer); has_content = true; } - printf(" return nothing"); + printdbg(" return nothing"); return false; } @@ -271,13 +295,14 @@ bool tree_sitter_just_external_scanner_scan(void *payload, TSLexer *lexer, const bool *valid_symbols) { Scanner *state = (Scanner *)(payload); int32_t *lookahead = &lexer->lookahead; - printf(" valid indent %d dedent %d newline %d str_start %d str_end %d \ + printdbg( + " valid indent %d dedent %d newline %d str_start %d str_end %d \ str_body %d raw_start %d raw_end %d cmd_start %d cmd_end %d \n", - valid_symbols[INDENT], valid_symbols[DEDENT], valid_symbols[NEWLINE], - valid_symbols[STRING_START], valid_symbols[STRING_END], - valid_symbols[STRING_BODY], valid_symbols[RAW_STRING_START], - valid_symbols[RAW_STRING_END], valid_symbols[COMMAND_START], - valid_symbols[COMMAND_END]); + valid_symbols[INDENT], valid_symbols[DEDENT], valid_symbols[NEWLINE], + valid_symbols[STRING_START], valid_symbols[STRING_END], + valid_symbols[STRING_BODY], valid_symbols[RAW_STRING_START], + valid_symbols[RAW_STRING_END], valid_symbols[COMMAND_START], + valid_symbols[COMMAND_END]); if (eof(lexer)) { return handle_eof(lexer, state, valid_symbols); @@ -285,34 +310,34 @@ bool tree_sitter_just_external_scanner_scan(void *payload, TSLexer *lexer, // Handle backslash escaping for newlines if (valid_symbols[NEWLINE]) { - printf(" newline valid\n"); + printdbg(" newline valid\n"); bool escape = false; if (*lookahead == '\\') { escape = true; - printf(" skip backslash\n"); + printdbg(" skip backslash\n"); skip(lexer); } bool eol = false; while (*lookahead == '\n' || *lookahead == '\r') { eol = true; - printf(" skip newline\n"); + printdbg(" skip newline\n"); skip(lexer); } if (eol && !escape) { - printf(" returning newline\n"); + printdbg(" returning newline\n"); lexer->result_symbol = NEWLINE; return true; } } if (valid_symbols[INDENT] || valid_symbols[DEDENT]) { - printf(" indent dedent valid\n"); + printdbg(" indent dedent valid\n"); while (!eof(lexer) && isspace(*lookahead)) { switch (*lookahead) { case '\n': - printf(" return false\n"); + printdbg(" return false\n"); return false; case '\t': @@ -331,13 +356,13 @@ bool tree_sitter_just_external_scanner_scan(void *payload, TSLexer *lexer, state->prev_indent == 0) { lexer->result_symbol = INDENT; state->prev_indent = indent; - printf(" return indent true\n"); + printdbg(" return indent true\n"); return true; } else if (indent < state->prev_indent && valid_symbols[DEDENT] && indent == 0) { lexer->result_symbol = DEDENT; state->prev_indent = indent; - printf(" return dedent true\n"); + printdbg(" return dedent true\n"); return true; } } @@ -355,36 +380,37 @@ bool tree_sitter_just_external_scanner_scan(void *payload, TSLexer *lexer, valid_symbols[RAW_STRING_END] || valid_symbols[COMMAND_END]) && scan_string_content(lexer, payload)) { if (!valid_symbols[lexer->result_symbol]) { - printf(" valid se %d sb %d rse %d ce %d result %d vals %d %d %d " - "%d \n", - valid_symbols[STRING_END], valid_symbols[STRING_BODY], - valid_symbols[RAW_STRING_END], valid_symbols[COMMAND_END], - lexer->result_symbol, STRING_END, STRING_BODY, RAW_STRING_END, - COMMAND_END); + printdbg( + " valid se %d sb %d rse %d ce %d result %d vals %d %d %d " + "%d \n", + valid_symbols[STRING_END], valid_symbols[STRING_BODY], + valid_symbols[RAW_STRING_END], valid_symbols[COMMAND_END], + lexer->result_symbol, STRING_END, STRING_BODY, RAW_STRING_END, + COMMAND_END); } assert(valid_symbols[lexer->result_symbol]); return true; } if (valid_symbols[STRING_START] && scan_string_start(lexer, state, '"')) { - printf(" scanned string start\n"); + printdbg(" scanned string start\n"); lexer->result_symbol = STRING_START; return true; } if (valid_symbols[RAW_STRING_START] && scan_string_start(lexer, state, '\'')) { - printf(" scanned raw start\n"); + printdbg(" scanned raw start\n"); lexer->result_symbol = RAW_STRING_START; return true; } if (valid_symbols[COMMAND_START] && scan_string_start(lexer, state, '`')) { - printf(" scanned cmd start\n"); + printdbg(" scanned cmd start\n"); lexer->result_symbol = COMMAND_START; return true; } - printf(" returning false\n"); + printdbg(" returning false\n"); return false; } diff --git a/test/corpus/injections.txt b/test/corpus/injections.txt index e69de29..18ed623 100644 --- a/test/corpus/injections.txt +++ b/test/corpus/injections.txt @@ -0,0 +1,49 @@ +================================================================================ +backtick injections +================================================================================ + +foo := `echo "foo {{ bar }}"` + +-------------------------------------------------------------------------------- + +(source_file + (item + (eol)) + (item + (assignment + (identifier) + (expression + (value + (external_command + (command_body) + (interpolation + (expression + (value + (identifier)))) + (command_body)))) + (eol))) + (item + (eol))) + +================================================================================ +backtick escape +================================================================================ + +foo := `echo "foo {{{{ bar }}"` + +-------------------------------------------------------------------------------- + +(source_file + (item + (eol)) + (item + (assignment + (identifier) + (expression + (value + (external_command + (command_body) + (command_body)))) + (eol))) + (item + (eol))) diff --git a/test/corpus/statements.txt b/test/corpus/statements.txt index 240ae2f..f29e55a 100644 --- a/test/corpus/statements.txt +++ b/test/corpus/statements.txt @@ -130,9 +130,9 @@ baz := "a\"\t" (identifier) (expression (value - (string - (string_escape) - (string_escape)))) + (string_literal + (escape_sequence) + (escape_sequence)))) (eol))) (item (eol))) @@ -174,9 +174,9 @@ def \" (identifier) (expression (value - (string - (string_escape) - (string_escape)))) + (string_literal + (escape_sequence) + (escape_sequence)))) (eol))) (item (eol))) @@ -228,7 +228,7 @@ foo := '''a''' bar:= '''b c ''' - baz := '''' +baz := '''' abc \t def \" ''' @@ -255,9 +255,15 @@ bar:= '''b (item (assignment (identifier) + (ERROR + (identifier) + (escape_sequence) + (identifier) + (escape_sequence)) (expression (value - (raw_string_literal))) + (raw_string_literal + (MISSING _raw_string_end)))) (eol))) (item (eol))) @@ -281,14 +287,16 @@ bar := `echo hi (identifier) (expression (value - (external_command))) + (external_command + (command_body)))) (eol))) (item (assignment (identifier) (expression (value - (external_command))) + (external_command + (command_body)))) (eol))) (item (eol))) @@ -311,14 +319,16 @@ echo bye (identifier) (expression (value - (external_command))) + (external_command + (command_body)))) (eol))) (item (assignment (identifier) (expression (value - (external_command))) + (external_command + (command_body)))) (eol)))) ================================================================================ diff --git a/test/highlight/statements.just b/test/highlight/statements.just index 994e028..3775d0e 100644 --- a/test/highlight/statements.just +++ b/test/highlight/statements.just @@ -80,7 +80,7 @@ def \" foo2 := 'a' # <- variable # ^^ operator -# ^^^ string +# ^^^ string bar2 := 'b c @@ -89,13 +89,13 @@ bar2 := 'b baz2 := 'a\"\t' # <- variable -# ^^ operator -# ^^^ string +# ^^ operator +# ^^^ string foo3 := '''a''' # <- variable # ^^ operator -# ^^^^^^^ string +# ^^^^^^^ string bar3 := '''b c