Changed Grammar

This commit is contained in:
Maix0 2024-06-09 19:16:09 +02:00
parent b0da66b7d8
commit fbb9977f4a
2132 changed files with 110314 additions and 233488 deletions

View file

@ -14,14 +14,14 @@
# define CONSTANTS_H
# define LANGUAGE_VERSION 14
# define STATE_COUNT 4087
# define LARGE_STATE_COUNT 257
# define SYMBOL_COUNT 212
# define STATE_COUNT 2263
# define LARGE_STATE_COUNT 2
# define SYMBOL_COUNT 184
# define ALIAS_COUNT 0
# define TOKEN_COUNT 138
# define EXTERNAL_TOKEN_COUNT 26
# define FIELD_COUNT 16
# define TOKEN_COUNT 116
# define EXTERNAL_TOKEN_COUNT 20
# define FIELD_COUNT 17
# define MAX_ALIAS_SEQUENCE_LENGTH 8
# define PRODUCTION_ID_COUNT 93
# define PRODUCTION_ID_COUNT 58
#endif // CONSTANTS_H

View file

@ -23,23 +23,17 @@ enum e_external_scanner_symbol_identifiers {
ts_external_token__empty_value = 6,
ts_external_token__concat = 7,
ts_external_token_variable_name = 8,
ts_external_token_test_operator = 9,
ts_external_token_regex = 10,
ts_external_token__regex_no_slash = 11,
ts_external_token__regex_no_space = 12,
ts_external_token__expansion_word = 13,
ts_external_token_extglob_pattern = 14,
ts_external_token__bare_dollar = 15,
ts_external_token__brace_start = 16,
ts_external_token__immediate_double_hash = 17,
ts_external_token_RBRACE = 18,
ts_external_token_RBRACK = 19,
ts_external_token_LT_LT = 20,
ts_external_token_LT_LT_DASH = 21,
ts_external_token_heredoc_redirect_token1 = 22,
ts_external_token_LPAREN = 23,
ts_external_token_esac = 24,
ts_external_token___error_recovery = 25,
ts_external_token_regex = 9,
ts_external_token__expansion_word = 10,
ts_external_token_extglob_pattern = 11,
ts_external_token__bare_dollar = 12,
ts_external_token__immediate_double_hash = 13,
ts_external_token_LT_LT = 14,
ts_external_token_LT_LT_DASH = 15,
ts_external_token_heredoc_redirect_token1 = 16,
ts_external_token_LPAREN = 17,
ts_external_token_esac = 18,
ts_external_token___error_recovery = 19,
};
#endif // EXTERNAL_SCANNER_SYMBOL_IDENTIFIERS_H

View file

@ -15,21 +15,22 @@
enum e_field_identifiers {
field_alternative = 1,
field_argument = 2,
field_arg = 2,
field_body = 3,
field_condition = 4,
field_consequence = 5,
field_descriptor = 6,
field_destination = 7,
field_fallthrough = 8,
field_left = 9,
field_name = 10,
field_operator = 11,
field_redirect = 12,
field_right = 13,
field_termination = 14,
field_value = 15,
field_variable = 16,
field_cases = 4,
field_cmd = 5,
field_cmds = 6,
field_condition = 7,
field_consequence = 8,
field_dest = 9,
field_fd = 10,
field_left = 11,
field_name = 12,
field_op = 13,
field_redirect = 14,
field_right = 15,
field_value = 16,
field_variable = 17,
};
#endif // FIELD_IDENTIFIERS_H

View file

@ -16,215 +16,187 @@
enum e_symbols {
sym_word = 1,
anon_sym_for = 2,
anon_sym_select = 3,
anon_sym_in = 4,
anon_sym_while = 5,
anon_sym_until = 6,
anon_sym_do = 7,
anon_sym_done = 8,
anon_sym_if = 9,
anon_sym_then = 10,
anon_sym_fi = 11,
anon_sym_elif = 12,
anon_sym_else = 13,
anon_sym_case = 14,
anon_sym_esac = 15,
anon_sym_LPAREN = 16,
anon_sym_PIPE = 17,
anon_sym_RPAREN = 18,
anon_sym_in = 3,
anon_sym_while = 4,
anon_sym_until = 5,
anon_sym_do = 6,
anon_sym_done = 7,
anon_sym_if = 8,
anon_sym_then = 9,
anon_sym_fi = 10,
anon_sym_elif = 11,
anon_sym_else = 12,
anon_sym_case = 13,
anon_sym_esac = 14,
anon_sym_LPAREN = 15,
anon_sym_PIPE = 16,
anon_sym_RPAREN = 17,
anon_sym_LF = 18,
anon_sym_SEMI_SEMI = 19,
anon_sym_SEMI_AMP = 20,
anon_sym_SEMI_SEMI_AMP = 21,
anon_sym_function = 22,
anon_sym_LBRACE = 23,
anon_sym_RBRACE = 24,
anon_sym_PIPE_AMP = 25,
anon_sym_AMP_AMP = 26,
anon_sym_PIPE_PIPE = 27,
anon_sym_BANG = 28,
anon_sym_declare = 29,
anon_sym_typeset = 30,
anon_sym_export = 31,
anon_sym_readonly = 32,
anon_sym_local = 33,
anon_sym_unset = 34,
anon_sym_unsetenv = 35,
anon_sym_EQ = 36,
anon_sym_LT = 37,
anon_sym_GT = 38,
anon_sym_GT_GT = 39,
anon_sym_AMP_GT = 40,
anon_sym_AMP_GT_GT = 41,
anon_sym_LT_AMP = 42,
anon_sym_GT_AMP = 43,
anon_sym_GT_PIPE = 44,
anon_sym_LT_AMP_DASH = 45,
anon_sym_GT_AMP_DASH = 46,
anon_sym_LT_LT = 47,
anon_sym_LT_LT_DASH = 48,
aux_sym_heredoc_redirect_token1 = 49,
anon_sym_DOLLAR_LPAREN_LPAREN = 50,
anon_sym_COMMA = 51,
anon_sym_RPAREN_RPAREN = 52,
aux_sym_brace_expression_token1 = 53,
anon_sym_DOT_DOT = 54,
anon_sym_RBRACE2 = 55,
anon_sym_PLUS_EQ = 56,
anon_sym_DASH_EQ = 57,
anon_sym_STAR_EQ = 58,
anon_sym_SLASH_EQ = 59,
anon_sym_PERCENT_EQ = 60,
anon_sym_LT_LT_EQ = 61,
anon_sym_GT_GT_EQ = 62,
anon_sym_AMP_EQ = 63,
anon_sym_CARET_EQ = 64,
anon_sym_PIPE_EQ = 65,
anon_sym_CARET = 66,
anon_sym_AMP = 67,
anon_sym_EQ_EQ = 68,
anon_sym_BANG_EQ = 69,
anon_sym_LT_EQ = 70,
anon_sym_GT_EQ = 71,
anon_sym_PLUS = 72,
anon_sym_DASH = 73,
anon_sym_STAR = 74,
anon_sym_SLASH = 75,
anon_sym_PERCENT = 76,
anon_sym_QMARK = 77,
anon_sym_COLON = 78,
anon_sym_PLUS_PLUS = 79,
anon_sym_DASH_DASH = 80,
anon_sym_DASH2 = 81,
anon_sym_PLUS2 = 82,
anon_sym_TILDE = 83,
anon_sym_PLUS_PLUS2 = 84,
anon_sym_DASH_DASH2 = 85,
aux_sym_concatenation_token1 = 86,
anon_sym_DOLLAR = 87,
sym__special_character = 88,
anon_sym_DQUOTE = 89,
sym_string_content = 90,
sym_raw_string = 91,
aux_sym_number_token1 = 92,
aux_sym_number_token2 = 93,
anon_sym_POUND = 94,
anon_sym_DOLLAR_LBRACE = 95,
anon_sym_RBRACE3 = 96,
anon_sym_COLON_DASH = 97,
anon_sym_DASH3 = 98,
anon_sym_COLON_EQ = 99,
anon_sym_EQ2 = 100,
anon_sym_COLON_QMARK = 101,
anon_sym_QMARK2 = 102,
anon_sym_COLON_PLUS = 103,
anon_sym_PLUS3 = 104,
anon_sym_PERCENT_PERCENT = 105,
aux_sym__expansion_regex_token1 = 106,
anon_sym_DOLLAR_LPAREN = 107,
anon_sym_BQUOTE = 108,
anon_sym_DOLLAR_BQUOTE = 109,
sym_comment = 110,
sym__comment_word = 111,
aux_sym__simple_variable_name_token1 = 112,
aux_sym__multiline_variable_name_token1 = 113,
anon_sym_AT = 114,
anon_sym_0 = 115,
anon_sym__ = 116,
anon_sym_SEMI = 117,
anon_sym_RBRACK = 118,
sym_heredoc_start = 119,
sym_simple_heredoc_body = 120,
sym__heredoc_body_beginning = 121,
sym_heredoc_content = 122,
sym_heredoc_end = 123,
sym_file_descriptor = 124,
sym__empty_value = 125,
sym__concat = 126,
sym_variable_name = 127,
sym_test_operator = 128,
sym_regex = 129,
sym__regex_no_slash = 130,
sym__regex_no_space = 131,
sym__expansion_word = 132,
sym_extglob_pattern = 133,
sym__bare_dollar = 134,
sym__brace_start = 135,
sym__immediate_double_hash = 136,
sym___error_recovery = 137,
sym_program = 138,
sym__statements = 139,
aux_sym__terminated_statement = 140,
sym__statement_not_pipeline = 141,
sym_redirected_statement = 142,
sym_for_statement = 143,
sym_while_statement = 144,
sym_do_group = 145,
sym_if_statement = 146,
sym_elif_clause = 147,
sym_else_clause = 148,
sym_case_statement = 149,
sym_case_item = 150,
sym_last_case_item = 151,
sym_function_definition = 152,
sym_compound_statement = 153,
sym_subshell = 154,
sym_pipeline = 155,
sym_list = 156,
sym_negated_command = 157,
sym_declaration_command = 158,
sym_unset_command = 159,
sym_command = 160,
sym_command_name = 161,
sym_variable_assignment = 162,
sym_variable_assignments = 163,
sym_file_redirect = 164,
sym_heredoc_redirect = 165,
sym__heredoc_pipeline = 166,
sym__heredoc_expression = 167,
aux_sym__heredoc_command = 168,
sym__heredoc_body = 169,
sym_heredoc_body = 170,
sym__simple_heredoc_body = 171,
sym_arithmetic_expansion = 172,
sym_brace_expression = 173,
sym__arithmetic_expression = 174,
sym__arithmetic_literal = 175,
sym__arithmetic_binary_expression = 176,
sym__arithmetic_ternary_expression = 177,
sym__arithmetic_unary_expression = 178,
sym__arithmetic_postfix_expression = 179,
sym__arithmetic_parenthesized_expression = 180,
sym_concatenation = 181,
sym_string = 182,
sym_number = 183,
sym_simple_expansion = 184,
sym_expansion = 185,
sym__expansion_body = 186,
sym__expansion_expression = 187,
sym__expansion_regex = 188,
sym__concatenation_in_expansion = 189,
sym_command_substitution = 190,
sym__extglob_blob = 191,
aux_sym__statements_repeat1 = 192,
aux_sym_redirected_statement_repeat1 = 193,
aux_sym_redirected_statement_repeat2 = 194,
aux_sym_for_statement_repeat1 = 195,
aux_sym_if_statement_repeat1 = 196,
aux_sym_case_statement_repeat1 = 197,
aux_sym_case_item_repeat1 = 198,
aux_sym_pipeline_repeat1 = 199,
aux_sym_declaration_command_repeat1 = 200,
aux_sym_unset_command_repeat1 = 201,
aux_sym_command_repeat1 = 202,
aux_sym_command_repeat2 = 203,
aux_sym_variable_assignments_repeat1 = 204,
aux_sym_heredoc_body_repeat1 = 205,
aux_sym__literal_repeat1 = 206,
aux_sym_arithmetic_expansion_repeat1 = 207,
aux_sym_concatenation_repeat1 = 208,
aux_sym_string_repeat1 = 209,
aux_sym__expansion_regex_repeat1 = 210,
aux_sym__concatenation_in_expansion_repeat1 = 211,
anon_sym_LBRACE = 20,
anon_sym_RBRACE = 21,
anon_sym_AMP_AMP = 22,
anon_sym_PIPE_PIPE = 23,
anon_sym_BANG = 24,
anon_sym_EQ = 25,
anon_sym_LT = 26,
anon_sym_GT = 27,
anon_sym_GT_GT = 28,
anon_sym_AMP_GT = 29,
anon_sym_AMP_GT_GT = 30,
anon_sym_LT_AMP = 31,
anon_sym_GT_AMP = 32,
anon_sym_GT_PIPE = 33,
anon_sym_LT_AMP_DASH = 34,
anon_sym_GT_AMP_DASH = 35,
anon_sym_LT_LT = 36,
anon_sym_LT_LT_DASH = 37,
aux_sym_heredoc_redirect_token1 = 38,
anon_sym_PIPE_AMP = 39,
anon_sym_DOLLAR_LPAREN_LPAREN = 40,
anon_sym_RPAREN_RPAREN = 41,
anon_sym_PLUS_EQ = 42,
anon_sym_DASH_EQ = 43,
anon_sym_STAR_EQ = 44,
anon_sym_SLASH_EQ = 45,
anon_sym_PERCENT_EQ = 46,
anon_sym_LT_LT_EQ = 47,
anon_sym_GT_GT_EQ = 48,
anon_sym_AMP_EQ = 49,
anon_sym_CARET_EQ = 50,
anon_sym_PIPE_EQ = 51,
anon_sym_CARET = 52,
anon_sym_AMP = 53,
anon_sym_EQ_EQ = 54,
anon_sym_BANG_EQ = 55,
anon_sym_LT_EQ = 56,
anon_sym_GT_EQ = 57,
anon_sym_PLUS = 58,
anon_sym_DASH = 59,
anon_sym_STAR = 60,
anon_sym_SLASH = 61,
anon_sym_PERCENT = 62,
anon_sym_QMARK = 63,
anon_sym_COLON = 64,
anon_sym_PLUS_PLUS = 65,
anon_sym_DASH_DASH = 66,
anon_sym_DASH2 = 67,
anon_sym_PLUS2 = 68,
anon_sym_TILDE = 69,
anon_sym_PLUS_PLUS2 = 70,
anon_sym_DASH_DASH2 = 71,
aux_sym_concatenation_token1 = 72,
anon_sym_DOLLAR = 73,
anon_sym_DQUOTE = 74,
sym_string_content = 75,
sym_raw_string = 76,
aux_sym_number_token1 = 77,
aux_sym_number_token2 = 78,
anon_sym_POUND = 79,
anon_sym_DOLLAR_LBRACE = 80,
anon_sym_COLON_DASH = 81,
anon_sym_DASH3 = 82,
anon_sym_COLON_EQ = 83,
anon_sym_EQ2 = 84,
anon_sym_COLON_QMARK = 85,
anon_sym_QMARK2 = 86,
anon_sym_COLON_PLUS = 87,
anon_sym_PLUS3 = 88,
anon_sym_PERCENT_PERCENT = 89,
aux_sym_expansion_regex_token1 = 90,
anon_sym_DOLLAR_LPAREN = 91,
anon_sym_BQUOTE = 92,
sym_comment = 93,
sym__comment_word = 94,
aux_sym__simple_variable_name_token1 = 95,
aux_sym__multiline_variable_name_token1 = 96,
anon_sym_AT = 97,
anon_sym_0 = 98,
anon_sym__ = 99,
anon_sym_SEMI = 100,
sym_heredoc_start = 101,
sym_simple_heredoc_body = 102,
sym__heredoc_body_beginning = 103,
sym_heredoc_content = 104,
sym_heredoc_end = 105,
sym_file_descriptor = 106,
sym__empty_value = 107,
sym__concat = 108,
sym_variable_name = 109,
sym_regex = 110,
sym__expansion_word = 111,
sym_extglob_pattern = 112,
sym__bare_dollar = 113,
sym__immediate_double_hash = 114,
sym___error_recovery = 115,
sym_program = 116,
sym__statements = 117,
aux_sym__terminated_statement = 118,
sym__statement_not_pipeline = 119,
sym_redirected_statement = 120,
sym_for_statement = 121,
sym_while_statement = 122,
sym_do_group = 123,
sym_if_statement = 124,
sym_elif_clause = 125,
sym_else_clause = 126,
sym_case_statement = 127,
sym__case_item_last = 128,
sym_case_item = 129,
sym_function_definition = 130,
sym_compound_statement = 131,
sym_subshell = 132,
sym_pipeline = 133,
sym_list = 134,
sym_negated_command = 135,
sym_command = 136,
sym_command_name = 137,
sym_variable_assignment = 138,
sym_variable_assignments = 139,
sym_file_redirect = 140,
sym_heredoc_redirect = 141,
sym__heredoc_pipeline = 142,
sym__heredoc_expression = 143,
aux_sym__heredoc_command = 144,
sym__heredoc_body = 145,
sym_heredoc_body = 146,
sym__simple_heredoc_body = 147,
sym_arithmetic_expansion = 148,
sym__arithmetic_expression = 149,
sym_arithmetic_literal = 150,
sym_arithmetic_binary_expression = 151,
sym_arithmetic_ternary_expression = 152,
sym_arithmetic_unary_expression = 153,
sym_arithmetic_postfix_expression = 154,
sym_arithmetic_parenthesized_expression = 155,
sym_concatenation = 156,
sym_string = 157,
sym_number = 158,
sym_simple_expansion = 159,
sym_expansion = 160,
sym__expansion_body = 161,
sym_expansion_expression = 162,
sym_expansion_regex = 163,
sym__concatenation_in_expansion = 164,
sym_command_substitution = 165,
sym__extglob_blob = 166,
aux_sym__statements_repeat1 = 167,
aux_sym_redirected_statement_repeat1 = 168,
aux_sym_redirected_statement_repeat2 = 169,
aux_sym_for_statement_repeat1 = 170,
aux_sym_if_statement_repeat1 = 171,
aux_sym_case_statement_repeat1 = 172,
aux_sym__case_item_last_repeat1 = 173,
aux_sym__case_item_last_repeat2 = 174,
aux_sym_pipeline_repeat1 = 175,
aux_sym_command_repeat1 = 176,
aux_sym_command_repeat2 = 177,
aux_sym_variable_assignments_repeat1 = 178,
aux_sym_heredoc_body_repeat1 = 179,
aux_sym_concatenation_repeat1 = 180,
aux_sym_string_repeat1 = 181,
aux_sym_expansion_regex_repeat1 = 182,
aux_sym__concatenation_in_expansion_repeat1 = 183,
};
#endif // SYMBOLS_H