diff options
author | Martin Jambon <martin@mjambon.com> | 2021-10-16 01:46:22 -0700 |
---|---|---|
committer | Martin Jambon <martin@mjambon.com> | 2021-10-16 01:46:22 -0700 |
commit | c93070d720c6dd52d85b85fcae041ce33fa227f3 (patch) | |
tree | 8c8682baba2b37318f21fca2cb63281f3f4190d7 | |
parent | 9d9325f8f91e7567b23c97e523805993354a86ca (diff) |
Regenerate files
-rw-r--r-- | src/grammar.json | 13 | ||||
-rw-r--r-- | src/node-types.json | 4 | ||||
-rw-r--r-- | src/parser.c | 32382 |
3 files changed, 16314 insertions, 16085 deletions
diff --git a/src/grammar.json b/src/grammar.json index 8da6fc69b..261d75e2d 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -433,8 +433,17 @@ "type": "SEQ", "members": [ { - "type": "STRING", - "value": "while" + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "while" + }, + { + "type": "STRING", + "value": "until" + } + ] }, { "type": "FIELD", diff --git a/src/node-types.json b/src/node-types.json index 1a967a561..308a626a9 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -1640,6 +1640,10 @@ "named": false }, { + "type": "until", + "named": false + }, + { "type": "variable_name", "named": true }, diff --git a/src/parser.c b/src/parser.c index 2c3db3ef7..cbc5dba7b 100644 --- a/src/parser.c +++ b/src/parser.c @@ -16,9 +16,9 @@ #define LANGUAGE_VERSION 13 #define STATE_COUNT 3481 #define LARGE_STATE_COUNT 158 -#define SYMBOL_COUNT 163 +#define SYMBOL_COUNT 164 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 102 +#define TOKEN_COUNT 103 #define EXTERNAL_TOKEN_COUNT 15 #define FIELD_COUNT 19 #define MAX_ALIAS_SEQUENCE_LENGTH 10 @@ -34,159 +34,160 @@ enum { anon_sym_RPAREN_RPAREN = 7, anon_sym_SEMI = 8, anon_sym_while = 9, - anon_sym_do = 10, - anon_sym_done = 11, - anon_sym_if = 12, - anon_sym_then = 13, - anon_sym_fi = 14, - anon_sym_elif = 15, - anon_sym_else = 16, - anon_sym_case = 17, - anon_sym_esac = 18, - anon_sym_PIPE = 19, - anon_sym_RPAREN = 20, - anon_sym_SEMI_SEMI = 21, - anon_sym_SEMI_AMP = 22, - anon_sym_SEMI_SEMI_AMP = 23, - anon_sym_function = 24, - anon_sym_LPAREN = 25, - anon_sym_LBRACE = 26, - anon_sym_RBRACE = 27, - anon_sym_PIPE_AMP = 28, - anon_sym_AMP_AMP = 29, - anon_sym_PIPE_PIPE = 30, - anon_sym_BANG = 31, - anon_sym_LBRACK = 32, - anon_sym_RBRACK = 33, - anon_sym_LBRACK_LBRACK = 34, - anon_sym_RBRACK_RBRACK = 35, - anon_sym_declare = 36, - anon_sym_typeset = 37, - anon_sym_export = 38, - anon_sym_readonly = 39, - anon_sym_local = 40, - anon_sym_unset = 41, - anon_sym_unsetenv = 42, - anon_sym_EQ_TILDE = 43, - anon_sym_EQ_EQ = 44, - anon_sym_EQ = 45, - anon_sym_PLUS_EQ = 46, - anon_sym_LT = 47, - anon_sym_GT = 48, - anon_sym_GT_GT = 49, - anon_sym_AMP_GT = 50, - anon_sym_AMP_GT_GT = 51, - anon_sym_LT_AMP = 52, - anon_sym_GT_AMP = 53, - anon_sym_GT_PIPE = 54, - anon_sym_LT_LT = 55, - anon_sym_LT_LT_DASH = 56, - anon_sym_LT_LT_LT = 57, - anon_sym_BANG_EQ = 58, - anon_sym_PLUS = 59, - anon_sym_DASH = 60, - anon_sym_DASH_EQ = 61, - anon_sym_LT_EQ = 62, - anon_sym_GT_EQ = 63, - anon_sym_QMARK = 64, - anon_sym_COLON = 65, - anon_sym_PLUS_PLUS = 66, - anon_sym_DASH_DASH = 67, - anon_sym_DOLLAR = 68, - sym__special_character = 69, - anon_sym_DQUOTE = 70, - sym__string_content = 71, - sym_raw_string = 72, - sym_ansii_c_string = 73, - anon_sym_POUND = 74, - anon_sym_DOLLAR_LBRACE = 75, - anon_sym_SLASH = 76, - anon_sym_COLON_QMARK = 77, - anon_sym_COLON_DASH = 78, - anon_sym_PERCENT = 79, - anon_sym_DOLLAR_LPAREN = 80, - anon_sym_BQUOTE = 81, - anon_sym_LT_LPAREN = 82, - anon_sym_GT_LPAREN = 83, - sym_comment = 84, - aux_sym__simple_variable_name_token1 = 85, - anon_sym_STAR = 86, - anon_sym_AT = 87, - anon_sym_0 = 88, - anon_sym__ = 89, - sym_test_operator = 90, - anon_sym_AMP = 91, - sym_heredoc_start = 92, - sym__simple_heredoc_body = 93, - sym__heredoc_body_beginning = 94, - sym__heredoc_body_middle = 95, - sym__heredoc_body_end = 96, - sym_file_descriptor = 97, - sym__empty_value = 98, - sym__concat = 99, - sym_variable_name = 100, - sym_regex = 101, - sym_program = 102, - sym__statements = 103, - aux_sym__statements2 = 104, - sym__terminated_statement = 105, - sym_redirected_statement = 106, - sym_for_statement = 107, - sym_c_style_for_statement = 108, - sym_while_statement = 109, - sym_do_group = 110, - sym_if_statement = 111, - sym_elif_clause = 112, - sym_else_clause = 113, - sym_case_statement = 114, - sym_case_item = 115, - sym_last_case_item = 116, - sym_function_definition = 117, - sym_compound_statement = 118, - sym_subshell = 119, - sym_pipeline = 120, - sym_list = 121, - sym_negated_command = 122, - sym_test_command = 123, - sym_declaration_command = 124, - sym_unset_command = 125, - sym_command = 126, - sym_command_name = 127, - sym_variable_assignment = 128, - sym_subscript = 129, - sym_file_redirect = 130, - sym_heredoc_redirect = 131, - sym_heredoc_body = 132, - sym_herestring_redirect = 133, - sym__expression = 134, - sym_binary_expression = 135, - sym_ternary_expression = 136, - sym_unary_expression = 137, - sym_postfix_expression = 138, - sym_parenthesized_expression = 139, - sym_concatenation = 140, - sym_string = 141, - sym_array = 142, - sym_simple_expansion = 143, - sym_string_expansion = 144, - sym_expansion = 145, - sym_command_substitution = 146, - sym_process_substitution = 147, - aux_sym__statements_repeat1 = 148, - aux_sym_redirected_statement_repeat1 = 149, - aux_sym_for_statement_repeat1 = 150, - aux_sym_if_statement_repeat1 = 151, - aux_sym_case_statement_repeat1 = 152, - aux_sym_case_item_repeat1 = 153, - aux_sym_declaration_command_repeat1 = 154, - aux_sym_unset_command_repeat1 = 155, - aux_sym_command_repeat1 = 156, - aux_sym_command_repeat2 = 157, - aux_sym_heredoc_body_repeat1 = 158, - aux_sym__literal_repeat1 = 159, - aux_sym_concatenation_repeat1 = 160, - aux_sym_string_repeat1 = 161, - aux_sym_expansion_repeat1 = 162, + anon_sym_until = 10, + anon_sym_do = 11, + anon_sym_done = 12, + anon_sym_if = 13, + anon_sym_then = 14, + anon_sym_fi = 15, + anon_sym_elif = 16, + anon_sym_else = 17, + anon_sym_case = 18, + anon_sym_esac = 19, + anon_sym_PIPE = 20, + anon_sym_RPAREN = 21, + anon_sym_SEMI_SEMI = 22, + anon_sym_SEMI_AMP = 23, + anon_sym_SEMI_SEMI_AMP = 24, + anon_sym_function = 25, + anon_sym_LPAREN = 26, + anon_sym_LBRACE = 27, + anon_sym_RBRACE = 28, + anon_sym_PIPE_AMP = 29, + anon_sym_AMP_AMP = 30, + anon_sym_PIPE_PIPE = 31, + anon_sym_BANG = 32, + anon_sym_LBRACK = 33, + anon_sym_RBRACK = 34, + anon_sym_LBRACK_LBRACK = 35, + anon_sym_RBRACK_RBRACK = 36, + anon_sym_declare = 37, + anon_sym_typeset = 38, + anon_sym_export = 39, + anon_sym_readonly = 40, + anon_sym_local = 41, + anon_sym_unset = 42, + anon_sym_unsetenv = 43, + anon_sym_EQ_TILDE = 44, + anon_sym_EQ_EQ = 45, + anon_sym_EQ = 46, + anon_sym_PLUS_EQ = 47, + anon_sym_LT = 48, + anon_sym_GT = 49, + anon_sym_GT_GT = 50, + anon_sym_AMP_GT = 51, + anon_sym_AMP_GT_GT = 52, + anon_sym_LT_AMP = 53, + anon_sym_GT_AMP = 54, + anon_sym_GT_PIPE = 55, + anon_sym_LT_LT = 56, + anon_sym_LT_LT_DASH = 57, + anon_sym_LT_LT_LT = 58, + anon_sym_BANG_EQ = 59, + anon_sym_PLUS = 60, + anon_sym_DASH = 61, + anon_sym_DASH_EQ = 62, + anon_sym_LT_EQ = 63, + anon_sym_GT_EQ = 64, + anon_sym_QMARK = 65, + anon_sym_COLON = 66, + anon_sym_PLUS_PLUS = 67, + anon_sym_DASH_DASH = 68, + anon_sym_DOLLAR = 69, + sym__special_character = 70, + anon_sym_DQUOTE = 71, + sym__string_content = 72, + sym_raw_string = 73, + sym_ansii_c_string = 74, + anon_sym_POUND = 75, + anon_sym_DOLLAR_LBRACE = 76, + anon_sym_SLASH = 77, + anon_sym_COLON_QMARK = 78, + anon_sym_COLON_DASH = 79, + anon_sym_PERCENT = 80, + anon_sym_DOLLAR_LPAREN = 81, + anon_sym_BQUOTE = 82, + anon_sym_LT_LPAREN = 83, + anon_sym_GT_LPAREN = 84, + sym_comment = 85, + aux_sym__simple_variable_name_token1 = 86, + anon_sym_STAR = 87, + anon_sym_AT = 88, + anon_sym_0 = 89, + anon_sym__ = 90, + sym_test_operator = 91, + anon_sym_AMP = 92, + sym_heredoc_start = 93, + sym__simple_heredoc_body = 94, + sym__heredoc_body_beginning = 95, + sym__heredoc_body_middle = 96, + sym__heredoc_body_end = 97, + sym_file_descriptor = 98, + sym__empty_value = 99, + sym__concat = 100, + sym_variable_name = 101, + sym_regex = 102, + sym_program = 103, + sym__statements = 104, + aux_sym__statements2 = 105, + sym__terminated_statement = 106, + sym_redirected_statement = 107, + sym_for_statement = 108, + sym_c_style_for_statement = 109, + sym_while_statement = 110, + sym_do_group = 111, + sym_if_statement = 112, + sym_elif_clause = 113, + sym_else_clause = 114, + sym_case_statement = 115, + sym_case_item = 116, + sym_last_case_item = 117, + sym_function_definition = 118, + sym_compound_statement = 119, + sym_subshell = 120, + sym_pipeline = 121, + sym_list = 122, + sym_negated_command = 123, + sym_test_command = 124, + sym_declaration_command = 125, + sym_unset_command = 126, + sym_command = 127, + sym_command_name = 128, + sym_variable_assignment = 129, + sym_subscript = 130, + sym_file_redirect = 131, + sym_heredoc_redirect = 132, + sym_heredoc_body = 133, + sym_herestring_redirect = 134, + sym__expression = 135, + sym_binary_expression = 136, + sym_ternary_expression = 137, + sym_unary_expression = 138, + sym_postfix_expression = 139, + sym_parenthesized_expression = 140, + sym_concatenation = 141, + sym_string = 142, + sym_array = 143, + sym_simple_expansion = 144, + sym_string_expansion = 145, + sym_expansion = 146, + sym_command_substitution = 147, + sym_process_substitution = 148, + aux_sym__statements_repeat1 = 149, + aux_sym_redirected_statement_repeat1 = 150, + aux_sym_for_statement_repeat1 = 151, + aux_sym_if_statement_repeat1 = 152, + aux_sym_case_statement_repeat1 = 153, + aux_sym_case_item_repeat1 = 154, + aux_sym_declaration_command_repeat1 = 155, + aux_sym_unset_command_repeat1 = 156, + aux_sym_command_repeat1 = 157, + aux_sym_command_repeat2 = 158, + aux_sym_heredoc_body_repeat1 = 159, + aux_sym__literal_repeat1 = 160, + aux_sym_concatenation_repeat1 = 161, + aux_sym_string_repeat1 = 162, + aux_sym_expansion_repeat1 = 163, }; static const char * const ts_symbol_names[] = { @@ -200,6 +201,7 @@ static const char * const ts_symbol_names[] = { [anon_sym_RPAREN_RPAREN] = "))", [anon_sym_SEMI] = ";", [anon_sym_while] = "while", + [anon_sym_until] = "until", [anon_sym_do] = "do", [anon_sym_done] = "done", [anon_sym_if] = "if", @@ -366,6 +368,7 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_RPAREN_RPAREN] = anon_sym_RPAREN_RPAREN, [anon_sym_SEMI] = anon_sym_SEMI, [anon_sym_while] = anon_sym_while, + [anon_sym_until] = anon_sym_until, [anon_sym_do] = anon_sym_do, [anon_sym_done] = anon_sym_done, [anon_sym_if] = anon_sym_if, @@ -562,6 +565,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_until] = { + .visible = true, + .named = false, + }, [anon_sym_do] = { .visible = true, .named = false, @@ -2314,11 +2321,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '$') ADVANCE(321); if (lookahead == '&') ADVANCE(423); if (lookahead == '\'') ADVANCE(106); + if (lookahead == ')') ADVANCE(250); if (lookahead == '*') ADVANCE(360); if (lookahead == '-') ADVANCE(307); if (lookahead == '0') ADVANCE(363); - if (lookahead == ';') ADVANCE(231); + if (lookahead == ';') ADVANCE(232); if (lookahead == '<') ADVANCE(283); + if (lookahead == '=') ADVANCE(398); if (lookahead == '>') ADVANCE(288); if (lookahead == '?') ADVANCE(313); if (lookahead == '@') ADVANCE(362); @@ -2337,8 +2346,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(353); if (lookahead != 0 && - lookahead != '(' && - lookahead != ')') ADVANCE(414); + lookahead != '(') ADVANCE(414); END_STATE(); case 68: if (lookahead == '\n') ADVANCE(217); @@ -2348,13 +2356,11 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '$') ADVANCE(321); if (lookahead == '&') ADVANCE(423); if (lookahead == '\'') ADVANCE(106); - if (lookahead == ')') ADVANCE(250); if (lookahead == '*') ADVANCE(360); if (lookahead == '-') ADVANCE(307); if (lookahead == '0') ADVANCE(363); - if (lookahead == ';') ADVANCE(232); + if (lookahead == ';') ADVANCE(231); if (lookahead == '<') ADVANCE(283); - if (lookahead == '=') ADVANCE(398); if (lookahead == '>') ADVANCE(288); if (lookahead == '?') ADVANCE(313); if (lookahead == '@') ADVANCE(362); @@ -2373,7 +2379,8 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(353); if (lookahead != 0 && - lookahead != '(') ADVANCE(414); + lookahead != '(' && + lookahead != ')') ADVANCE(414); END_STATE(); case 69: if (lookahead == '\n') ADVANCE(218); @@ -3880,7 +3887,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 194: if (eof) ADVANCE(204); - if (lookahead == '\n') ADVANCE(217); + if (lookahead == '\n') ADVANCE(216); if (lookahead == '!') ADVANCE(265); if (lookahead == '"') ADVANCE(325); if (lookahead == '#') ADVANCE(338); @@ -3901,7 +3908,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == ']' || lookahead == '{' || lookahead == '}') ADVANCE(323); - if (lookahead == '\\') ADVANCE(146); + if (lookahead == '\\') ADVANCE(145); if (lookahead == '_') ADVANCE(366); if (lookahead == '`') ADVANCE(345); if (lookahead == '|') ADVANCE(248); @@ -5052,6 +5059,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '*') ADVANCE(360); if (lookahead == '-') ADVANCE(307); if (lookahead == '0') ADVANCE(363); + if (lookahead == '=') ADVANCE(398); if (lookahead == '?') ADVANCE(313); if (lookahead == '@') ADVANCE(362); if (lookahead == '\\') ADVANCE(145); @@ -5064,9 +5072,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead != '\r' && (lookahead < ' ' || '$' < lookahead) && (lookahead < '&' || ')' < lookahead) && - lookahead != ';' && - lookahead != '<' && - (lookahead < '>' || ']' < lookahead) && + (lookahead < ';' || ']' < lookahead) && (lookahead < '`' || '}' < lookahead)) ADVANCE(414); END_STATE(); case 379: @@ -5076,7 +5082,6 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '*') ADVANCE(360); if (lookahead == '-') ADVANCE(307); if (lookahead == '0') ADVANCE(363); - if (lookahead == '=') ADVANCE(398); if (lookahead == '?') ADVANCE(313); if (lookahead == '@') ADVANCE(362); if (lookahead == '\\') ADVANCE(146); @@ -5089,7 +5094,9 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead != '\r' && (lookahead < ' ' || '$' < lookahead) && (lookahead < '&' || ')' < lookahead) && - (lookahead < ';' || ']' < lookahead) && + lookahead != ';' && + lookahead != '<' && + (lookahead < '>' || ']' < lookahead) && (lookahead < '`' || '}' < lookahead)) ADVANCE(414); END_STATE(); case 380: @@ -5563,150 +5570,160 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { END_STATE(); case 25: if (lookahead == 's') ADVANCE(37); + if (lookahead == 't') ADVANCE(38); END_STATE(); case 26: - if (lookahead == 'i') ADVANCE(38); + if (lookahead == 'i') ADVANCE(39); END_STATE(); case 27: - if (lookahead == 'e') ADVANCE(39); + if (lookahead == 'e') ADVANCE(40); END_STATE(); case 28: - if (lookahead == 'l') ADVANCE(40); + if (lookahead == 'l') ADVANCE(41); END_STATE(); case 29: - if (lookahead == 'e') ADVANCE(41); + if (lookahead == 'e') ADVANCE(42); END_STATE(); case 30: - if (lookahead == 'o') ADVANCE(42); + if (lookahead == 'o') ADVANCE(43); END_STATE(); case 31: ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 32: - if (lookahead == 'c') ADVANCE(43); + if (lookahead == 'c') ADVANCE(44); END_STATE(); case 33: - if (lookahead == 'a') ADVANCE(44); + if (lookahead == 'a') ADVANCE(45); END_STATE(); case 34: - if (lookahead == 'd') ADVANCE(45); + if (lookahead == 'd') ADVANCE(46); END_STATE(); case 35: - if (lookahead == 'e') ADVANCE(46); + if (lookahead == 'e') ADVANCE(47); END_STATE(); case 36: - if (lookahead == 'e') ADVANCE(47); + if (lookahead == 'e') ADVANCE(48); END_STATE(); case 37: - if (lookahead == 'e') ADVANCE(48); + if (lookahead == 'e') ADVANCE(49); END_STATE(); case 38: - if (lookahead == 'l') ADVANCE(49); + if (lookahead == 'i') ADVANCE(50); END_STATE(); case 39: - ACCEPT_TOKEN(anon_sym_case); + if (lookahead == 'l') ADVANCE(51); END_STATE(); case 40: - if (lookahead == 'a') ADVANCE(50); + ACCEPT_TOKEN(anon_sym_case); END_STATE(); case 41: - ACCEPT_TOKEN(anon_sym_done); + if (lookahead == 'a') ADVANCE(52); END_STATE(); case 42: - if (lookahead == 'r') ADVANCE(51); + ACCEPT_TOKEN(anon_sym_done); END_STATE(); case 43: - if (lookahead == 't') ADVANCE(52); + if (lookahead == 'r') ADVANCE(53); END_STATE(); case 44: - if (lookahead == 'l') ADVANCE(53); + if (lookahead == 't') ADVANCE(54); END_STATE(); case 45: - if (lookahead == 'o') ADVANCE(54); + if (lookahead == 'l') ADVANCE(55); END_STATE(); case 46: - if (lookahead == 'c') ADVANCE(55); + if (lookahead == 'o') ADVANCE(56); END_STATE(); case 47: - if (lookahead == 's') ADVANCE(56); + if (lookahead == 'c') ADVANCE(57); END_STATE(); case 48: - if (lookahead == 't') ADVANCE(57); + if (lookahead == 's') ADVANCE(58); END_STATE(); case 49: - if (lookahead == 'e') ADVANCE(58); + if (lookahead == 't') ADVANCE(59); END_STATE(); case 50: - if (lookahead == 'r') ADVANCE(59); + if (lookahead == 'l') ADVANCE(60); END_STATE(); case 51: - if (lookahead == 't') ADVANCE(60); + if (lookahead == 'e') ADVANCE(61); END_STATE(); case 52: - if (lookahead == 'i') ADVANCE(61); + if (lookahead == 'r') ADVANCE(62); END_STATE(); case 53: - ACCEPT_TOKEN(anon_sym_local); + if (lookahead == 't') ADVANCE(63); END_STATE(); case 54: - if (lookahead == 'n') ADVANCE(62); + if (lookahead == 'i') ADVANCE(64); END_STATE(); case 55: - if (lookahead == 't') ADVANCE(63); + ACCEPT_TOKEN(anon_sym_local); END_STATE(); case 56: - if (lookahead == 'e') ADVANCE(64); + if (lookahead == 'n') ADVANCE(65); END_STATE(); case 57: - ACCEPT_TOKEN(anon_sym_unset); - if (lookahead == 'e') ADVANCE(65); + if (lookahead == 't') ADVANCE(66); END_STATE(); case 58: - ACCEPT_TOKEN(anon_sym_while); + if (lookahead == 'e') ADVANCE(67); END_STATE(); case 59: - if (lookahead == 'e') ADVANCE(66); + ACCEPT_TOKEN(anon_sym_unset); + if (lookahead == 'e') ADVANCE(68); END_STATE(); case 60: - ACCEPT_TOKEN(anon_sym_export); + ACCEPT_TOKEN(anon_sym_until); END_STATE(); case 61: - if (lookahead == 'o') ADVANCE(67); + ACCEPT_TOKEN(anon_sym_while); END_STATE(); case 62: - if (lookahead == 'l') ADVANCE(68); + if (lookahead == 'e') ADVANCE(69); END_STATE(); case 63: - ACCEPT_TOKEN(anon_sym_select); + ACCEPT_TOKEN(anon_sym_export); END_STATE(); case 64: - if (lookahead == 't') ADVANCE(69); + if (lookahead == 'o') ADVANCE(70); END_STATE(); case 65: - if (lookahead == 'n') ADVANCE(70); + if (lookahead == 'l') ADVANCE(71); END_STATE(); case 66: - ACCEPT_TOKEN(anon_sym_declare); + ACCEPT_TOKEN(anon_sym_select); END_STATE(); case 67: - if (lookahead == 'n') ADVANCE(71); + if (lookahead == 't') ADVANCE(72); END_STATE(); case 68: - if (lookahead == 'y') ADVANCE(72); + if (lookahead == 'n') ADVANCE(73); END_STATE(); case 69: - ACCEPT_TOKEN(anon_sym_typeset); + ACCEPT_TOKEN(anon_sym_declare); END_STATE(); case 70: - if (lookahead == 'v') ADVANCE(73); + if (lookahead == 'n') ADVANCE(74); END_STATE(); case 71: - ACCEPT_TOKEN(anon_sym_function); + if (lookahead == 'y') ADVANCE(75); END_STATE(); case 72: - ACCEPT_TOKEN(anon_sym_readonly); + ACCEPT_TOKEN(anon_sym_typeset); END_STATE(); case 73: + if (lookahead == 'v') ADVANCE(76); + END_STATE(); + case 74: + ACCEPT_TOKEN(anon_sym_function); + END_STATE(); + case 75: + ACCEPT_TOKEN(anon_sym_readonly); + END_STATE(); + case 76: ACCEPT_TOKEN(anon_sym_unsetenv); END_STATE(); default: @@ -5746,11 +5763,11 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [28] = {.lex_state = 198, .external_lex_state = 2}, [29] = {.lex_state = 198, .external_lex_state = 2}, [30] = {.lex_state = 198, .external_lex_state = 2}, - [31] = {.lex_state = 82, .external_lex_state = 2}, - [32] = {.lex_state = 198, .external_lex_state = 2}, - [33] = {.lex_state = 198, .external_lex_state = 2}, + [31] = {.lex_state = 198, .external_lex_state = 2}, + [32] = {.lex_state = 82, .external_lex_state = 2}, + [33] = {.lex_state = 82, .external_lex_state = 2}, [34] = {.lex_state = 198, .external_lex_state = 2}, - [35] = {.lex_state = 82, .external_lex_state = 2}, + [35] = {.lex_state = 198, .external_lex_state = 2}, [36] = {.lex_state = 198, .external_lex_state = 2}, [37] = {.lex_state = 198, .external_lex_state = 2}, [38] = {.lex_state = 198, .external_lex_state = 2}, @@ -5793,7 +5810,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [75] = {.lex_state = 198, .external_lex_state = 2}, [76] = {.lex_state = 198, .external_lex_state = 2}, [77] = {.lex_state = 198, .external_lex_state = 2}, - [78] = {.lex_state = 83, .external_lex_state = 3}, + [78] = {.lex_state = 198, .external_lex_state = 2}, [79] = {.lex_state = 198, .external_lex_state = 2}, [80] = {.lex_state = 198, .external_lex_state = 2}, [81] = {.lex_state = 198, .external_lex_state = 2}, @@ -5811,19 +5828,19 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [93] = {.lex_state = 198, .external_lex_state = 2}, [94] = {.lex_state = 83, .external_lex_state = 3}, [95] = {.lex_state = 198, .external_lex_state = 2}, - [96] = {.lex_state = 83, .external_lex_state = 3}, + [96] = {.lex_state = 198, .external_lex_state = 2}, [97] = {.lex_state = 198, .external_lex_state = 2}, - [98] = {.lex_state = 198, .external_lex_state = 2}, + [98] = {.lex_state = 82, .external_lex_state = 2}, [99] = {.lex_state = 198, .external_lex_state = 2}, [100] = {.lex_state = 198, .external_lex_state = 2}, - [101] = {.lex_state = 198, .external_lex_state = 2}, + [101] = {.lex_state = 83, .external_lex_state = 3}, [102] = {.lex_state = 198, .external_lex_state = 2}, - [103] = {.lex_state = 198, .external_lex_state = 2}, + [103] = {.lex_state = 83, .external_lex_state = 3}, [104] = {.lex_state = 198, .external_lex_state = 2}, [105] = {.lex_state = 198, .external_lex_state = 2}, - [106] = {.lex_state = 83, .external_lex_state = 3}, + [106] = {.lex_state = 198, .external_lex_state = 2}, [107] = {.lex_state = 198, .external_lex_state = 2}, - [108] = {.lex_state = 83, .external_lex_state = 3}, + [108] = {.lex_state = 198, .external_lex_state = 2}, [109] = {.lex_state = 198, .external_lex_state = 2}, [110] = {.lex_state = 198, .external_lex_state = 2}, [111] = {.lex_state = 198, .external_lex_state = 2}, @@ -5837,14 +5854,14 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [119] = {.lex_state = 198, .external_lex_state = 2}, [120] = {.lex_state = 198, .external_lex_state = 2}, [121] = {.lex_state = 198, .external_lex_state = 2}, - [122] = {.lex_state = 198, .external_lex_state = 2}, + [122] = {.lex_state = 83, .external_lex_state = 3}, [123] = {.lex_state = 198, .external_lex_state = 2}, [124] = {.lex_state = 198, .external_lex_state = 2}, [125] = {.lex_state = 198, .external_lex_state = 2}, [126] = {.lex_state = 198, .external_lex_state = 2}, - [127] = {.lex_state = 83, .external_lex_state = 3}, - [128] = {.lex_state = 82, .external_lex_state = 2}, - [129] = {.lex_state = 198, .external_lex_state = 2}, + [127] = {.lex_state = 198, .external_lex_state = 2}, + [128] = {.lex_state = 83, .external_lex_state = 3}, + [129] = {.lex_state = 83, .external_lex_state = 3}, [130] = {.lex_state = 198, .external_lex_state = 2}, [131] = {.lex_state = 198, .external_lex_state = 2}, [132] = {.lex_state = 198, .external_lex_state = 2}, @@ -5873,147 +5890,147 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [155] = {.lex_state = 198, .external_lex_state = 2}, [156] = {.lex_state = 198, .external_lex_state = 2}, [157] = {.lex_state = 198, .external_lex_state = 2}, - [158] = {.lex_state = 8, .external_lex_state = 4}, - [159] = {.lex_state = 8, .external_lex_state = 4}, - [160] = {.lex_state = 8, .external_lex_state = 4}, - [161] = {.lex_state = 80, .external_lex_state = 5}, - [162] = {.lex_state = 80, .external_lex_state = 5}, - [163] = {.lex_state = 60, .external_lex_state = 4}, - [164] = {.lex_state = 60, .external_lex_state = 4}, - [165] = {.lex_state = 81, .external_lex_state = 5}, - [166] = {.lex_state = 61, .external_lex_state = 6}, - [167] = {.lex_state = 198, .external_lex_state = 5}, - [168] = {.lex_state = 60, .external_lex_state = 4}, - [169] = {.lex_state = 198, .external_lex_state = 5}, - [170] = {.lex_state = 193, .external_lex_state = 4}, - [171] = {.lex_state = 63, .external_lex_state = 6}, - [172] = {.lex_state = 193, .external_lex_state = 4}, - [173] = {.lex_state = 63, .external_lex_state = 6}, + [158] = {.lex_state = 80, .external_lex_state = 4}, + [159] = {.lex_state = 80, .external_lex_state = 4}, + [160] = {.lex_state = 198, .external_lex_state = 4}, + [161] = {.lex_state = 8, .external_lex_state = 5}, + [162] = {.lex_state = 198, .external_lex_state = 4}, + [163] = {.lex_state = 8, .external_lex_state = 5}, + [164] = {.lex_state = 81, .external_lex_state = 4}, + [165] = {.lex_state = 8, .external_lex_state = 5}, + [166] = {.lex_state = 60, .external_lex_state = 5}, + [167] = {.lex_state = 61, .external_lex_state = 6}, + [168] = {.lex_state = 60, .external_lex_state = 5}, + [169] = {.lex_state = 60, .external_lex_state = 5}, + [170] = {.lex_state = 193, .external_lex_state = 5}, + [171] = {.lex_state = 80, .external_lex_state = 2}, + [172] = {.lex_state = 198, .external_lex_state = 2}, + [173] = {.lex_state = 80, .external_lex_state = 2}, [174] = {.lex_state = 63, .external_lex_state = 6}, - [175] = {.lex_state = 63, .external_lex_state = 6}, - [176] = {.lex_state = 193, .external_lex_state = 4}, - [177] = {.lex_state = 64, .external_lex_state = 4}, - [178] = {.lex_state = 63, .external_lex_state = 6}, - [179] = {.lex_state = 64, .external_lex_state = 4}, - [180] = {.lex_state = 65, .external_lex_state = 6}, - [181] = {.lex_state = 193, .external_lex_state = 4}, - [182] = {.lex_state = 193, .external_lex_state = 4}, - [183] = {.lex_state = 193, .external_lex_state = 4}, - [184] = {.lex_state = 66, .external_lex_state = 6}, - [185] = {.lex_state = 67, .external_lex_state = 4}, - [186] = {.lex_state = 66, .external_lex_state = 6}, - [187] = {.lex_state = 82, .external_lex_state = 5}, - [188] = {.lex_state = 80, .external_lex_state = 2}, - [189] = {.lex_state = 64, .external_lex_state = 6}, - [190] = {.lex_state = 193, .external_lex_state = 4}, - [191] = {.lex_state = 8, .external_lex_state = 6}, - [192] = {.lex_state = 66, .external_lex_state = 6}, - [193] = {.lex_state = 66, .external_lex_state = 6}, - [194] = {.lex_state = 198, .external_lex_state = 5}, + [175] = {.lex_state = 80, .external_lex_state = 2}, + [176] = {.lex_state = 198, .external_lex_state = 4}, + [177] = {.lex_state = 82, .external_lex_state = 4}, + [178] = {.lex_state = 193, .external_lex_state = 5}, + [179] = {.lex_state = 63, .external_lex_state = 6}, + [180] = {.lex_state = 63, .external_lex_state = 6}, + [181] = {.lex_state = 63, .external_lex_state = 6}, + [182] = {.lex_state = 198, .external_lex_state = 4}, + [183] = {.lex_state = 198, .external_lex_state = 4}, + [184] = {.lex_state = 193, .external_lex_state = 5}, + [185] = {.lex_state = 193, .external_lex_state = 5}, + [186] = {.lex_state = 63, .external_lex_state = 6}, + [187] = {.lex_state = 198, .external_lex_state = 2}, + [188] = {.lex_state = 193, .external_lex_state = 5}, + [189] = {.lex_state = 80, .external_lex_state = 2}, + [190] = {.lex_state = 198, .external_lex_state = 4}, + [191] = {.lex_state = 193, .external_lex_state = 5}, + [192] = {.lex_state = 64, .external_lex_state = 5}, + [193] = {.lex_state = 83, .external_lex_state = 7}, + [194] = {.lex_state = 198, .external_lex_state = 2}, [195] = {.lex_state = 198, .external_lex_state = 2}, - [196] = {.lex_state = 198, .external_lex_state = 5}, - [197] = {.lex_state = 198, .external_lex_state = 5}, - [198] = {.lex_state = 80, .external_lex_state = 2}, - [199] = {.lex_state = 80, .external_lex_state = 2}, - [200] = {.lex_state = 8, .external_lex_state = 6}, - [201] = {.lex_state = 194, .external_lex_state = 6}, - [202] = {.lex_state = 80, .external_lex_state = 2}, - [203] = {.lex_state = 193, .external_lex_state = 4}, - [204] = {.lex_state = 198, .external_lex_state = 2}, - [205] = {.lex_state = 66, .external_lex_state = 6}, - [206] = {.lex_state = 198, .external_lex_state = 2}, - [207] = {.lex_state = 8, .external_lex_state = 6}, - [208] = {.lex_state = 198, .external_lex_state = 2}, - [209] = {.lex_state = 198, .external_lex_state = 5}, - [210] = {.lex_state = 198, .external_lex_state = 5}, - [211] = {.lex_state = 67, .external_lex_state = 4}, - [212] = {.lex_state = 194, .external_lex_state = 6}, - [213] = {.lex_state = 83, .external_lex_state = 7}, - [214] = {.lex_state = 195, .external_lex_state = 6}, - [215] = {.lex_state = 198, .external_lex_state = 5}, - [216] = {.lex_state = 195, .external_lex_state = 6}, - [217] = {.lex_state = 196, .external_lex_state = 4}, - [218] = {.lex_state = 198, .external_lex_state = 5}, + [196] = {.lex_state = 198, .external_lex_state = 4}, + [197] = {.lex_state = 64, .external_lex_state = 5}, + [198] = {.lex_state = 65, .external_lex_state = 6}, + [199] = {.lex_state = 66, .external_lex_state = 6}, + [200] = {.lex_state = 66, .external_lex_state = 6}, + [201] = {.lex_state = 8, .external_lex_state = 6}, + [202] = {.lex_state = 193, .external_lex_state = 5}, + [203] = {.lex_state = 81, .external_lex_state = 2}, + [204] = {.lex_state = 64, .external_lex_state = 6}, + [205] = {.lex_state = 8, .external_lex_state = 6}, + [206] = {.lex_state = 194, .external_lex_state = 6}, + [207] = {.lex_state = 68, .external_lex_state = 5}, + [208] = {.lex_state = 198, .external_lex_state = 4}, + [209] = {.lex_state = 193, .external_lex_state = 5}, + [210] = {.lex_state = 66, .external_lex_state = 6}, + [211] = {.lex_state = 194, .external_lex_state = 6}, + [212] = {.lex_state = 198, .external_lex_state = 4}, + [213] = {.lex_state = 8, .external_lex_state = 6}, + [214] = {.lex_state = 198, .external_lex_state = 4}, + [215] = {.lex_state = 66, .external_lex_state = 6}, + [216] = {.lex_state = 66, .external_lex_state = 6}, + [217] = {.lex_state = 68, .external_lex_state = 5}, + [218] = {.lex_state = 81, .external_lex_state = 2}, [219] = {.lex_state = 195, .external_lex_state = 6}, [220] = {.lex_state = 60, .external_lex_state = 6}, - [221] = {.lex_state = 198, .external_lex_state = 5}, - [222] = {.lex_state = 196, .external_lex_state = 4}, - [223] = {.lex_state = 67, .external_lex_state = 6}, + [221] = {.lex_state = 60, .external_lex_state = 6}, + [222] = {.lex_state = 60, .external_lex_state = 6}, + [223] = {.lex_state = 195, .external_lex_state = 6}, [224] = {.lex_state = 195, .external_lex_state = 6}, - [225] = {.lex_state = 81, .external_lex_state = 2}, + [225] = {.lex_state = 68, .external_lex_state = 6}, [226] = {.lex_state = 195, .external_lex_state = 6}, [227] = {.lex_state = 195, .external_lex_state = 6}, - [228] = {.lex_state = 60, .external_lex_state = 6}, - [229] = {.lex_state = 195, .external_lex_state = 6}, - [230] = {.lex_state = 60, .external_lex_state = 6}, - [231] = {.lex_state = 195, .external_lex_state = 6}, - [232] = {.lex_state = 195, .external_lex_state = 6}, + [228] = {.lex_state = 195, .external_lex_state = 6}, + [229] = {.lex_state = 196, .external_lex_state = 5}, + [230] = {.lex_state = 196, .external_lex_state = 5}, + [231] = {.lex_state = 196, .external_lex_state = 5}, + [232] = {.lex_state = 196, .external_lex_state = 5}, [233] = {.lex_state = 195, .external_lex_state = 6}, - [234] = {.lex_state = 196, .external_lex_state = 4}, - [235] = {.lex_state = 81, .external_lex_state = 2}, - [236] = {.lex_state = 196, .external_lex_state = 4}, - [237] = {.lex_state = 196, .external_lex_state = 6}, + [234] = {.lex_state = 195, .external_lex_state = 6}, + [235] = {.lex_state = 195, .external_lex_state = 6}, + [236] = {.lex_state = 195, .external_lex_state = 6}, + [237] = {.lex_state = 193, .external_lex_state = 6}, [238] = {.lex_state = 193, .external_lex_state = 6}, - [239] = {.lex_state = 195, .external_lex_state = 6}, - [240] = {.lex_state = 193, .external_lex_state = 6}, + [239] = {.lex_state = 198, .external_lex_state = 2}, + [240] = {.lex_state = 83, .external_lex_state = 3}, [241] = {.lex_state = 193, .external_lex_state = 6}, - [242] = {.lex_state = 193, .external_lex_state = 6}, - [243] = {.lex_state = 195, .external_lex_state = 6}, - [244] = {.l |