update: changed the way heredocs are parsed

This commit is contained in:
maix0 2024-09-15 20:29:27 +00:00
parent 8272d72997
commit 43b969183d
365 changed files with 20907 additions and 51362 deletions

View file

@ -21,26 +21,11 @@ static const \
t_symbols_metadata_array g_t_symbols_metadata_array = {.a = {
[ts_builtin_sym_end] = {false, true, false},
[sym_word] = {true, true, false},
[anon_sym_for] = {true, false, false},
[anon_sym_in] = {true, false, false},
[anon_sym_while] = {true, false, false},
[anon_sym_until] = {true, false, false},
[anon_sym_do] = {true, false, false},
[anon_sym_done] = {true, false, false},
[anon_sym_if] = {true, false, false},
[anon_sym_then] = {true, false, false},
[anon_sym_fi] = {true, false, false},
[anon_sym_elif] = {true, false, false},
[anon_sym_else] = {true, false, false},
[anon_sym_case] = {true, false, false},
[anon_sym_esac] = {true, false, false},
[anon_sym_LPAREN] = {true, false, false},
[anon_sym_PIPE] = {true, false, false},
[anon_sym_RPAREN] = {true, false, false},
[anon_sym_LF] = {true, false, false},
[anon_sym_SEMI_SEMI] = {true, false, false},
[anon_sym_LBRACE] = {true, false, false},
[anon_sym_RBRACE] = {true, false, false},
[anon_sym_LPAREN] = {true, false, false},
[anon_sym_RPAREN] = {true, false, false},
[anon_sym_PIPE] = {true, false, false},
[anon_sym_AMP_AMP] = {true, true, false},
[anon_sym_PIPE_PIPE] = {true, true, false},
[anon_sym_BANG] = {true, false, false},
@ -49,7 +34,7 @@ t_symbols_metadata_array g_t_symbols_metadata_array = {.a = {
[anon_sym_GT] = {true, true, false},
[anon_sym_GT_GT] = {true, true, false},
[anon_sym_LT_LT] = {true, true, false},
[aux_sym_heredoc_redirect_token1] = {false, false, false},
[aux_sym_heredoc_redirect_token1] = {true, true, false},
[anon_sym_DOLLAR_LPAREN_LPAREN] = {true, false, false},
[anon_sym_RPAREN_RPAREN] = {true, false, false},
[anon_sym_PLUS] = {true, true, false},
@ -91,12 +76,8 @@ t_symbols_metadata_array g_t_symbols_metadata_array = {.a = {
[anon_sym_0] = {true, true, false},
[aux_sym__word_no_brace_token1] = {false, false, false},
[anon_sym_SEMI] = {true, false, false},
[anon_sym_LT_LT_DASH] = {true, false, false},
[sym_heredoc_start] = {true, true, false},
[sym_simple_heredoc_body] = {true, true, false},
[sym__heredoc_body_beginning] = {false, true, false},
[sym_heredoc_content] = {true, true, false},
[sym_heredoc_end] = {true, true, false},
[anon_sym_SEMI_SEMI] = {true, false, false},
[aux_sym_terminator_token1] = {false, false, false},
[sym_file_descriptor] = {true, true, false},
[sym__empty_value] = {false, true, false},
[sym__concat] = {false, true, false},
@ -112,16 +93,6 @@ t_symbols_metadata_array g_t_symbols_metadata_array = {.a = {
[aux_sym__terminated_statement] = {false, false, false},
[sym__statement_not_pipeline] = {false, true, false},
[sym_redirected_statement] = {true, true, false},
[sym_for_statement] = {true, true, false},
[sym_while_statement] = {true, true, false},
[sym_do_group] = {true, true, false},
[sym_if_statement] = {true, true, false},
[sym_elif_clause] = {true, true, false},
[sym_else_clause] = {true, true, false},
[sym_case_statement] = {true, true, false},
[sym__case_item_last] = {true, true, false},
[sym_case_item] = {true, true, false},
[sym_function_definition] = {true, true, false},
[sym_compound_statement] = {true, true, false},
[sym_subshell] = {true, true, false},
[sym_pipeline] = {true, true, false},
@ -133,12 +104,6 @@ t_symbols_metadata_array g_t_symbols_metadata_array = {.a = {
[sym__variable_assignments] = {false, true, false},
[sym_file_redirect] = {true, true, false},
[sym_heredoc_redirect] = {true, true, false},
[sym__heredoc_pipeline] = {true, true, false},
[sym__heredoc_expression] = {false, true, false},
[aux_sym__heredoc_command] = {false, false, false},
[sym__heredoc_body] = {false, true, false},
[sym_heredoc_body] = {true, true, false},
[sym__simple_heredoc_body] = {false, true, false},
[sym_arithmetic_expansion] = {true, true, false},
[sym__arithmetic_expression] = {false, true, false},
[sym_arithmetic_literal] = {true, true, false},
@ -156,22 +121,16 @@ t_symbols_metadata_array g_t_symbols_metadata_array = {.a = {
[sym__expansion_regex] = {false, true, false},
[sym__concatenation_in_expansion] = {true, true, false},
[sym_command_substitution] = {true, true, false},
[sym__extglob_blob] = {false, true, false},
[sym__word_no_brace] = {true, true, false},
[sym_terminator] = {true, true, false},
[aux_sym__statements_repeat1] = {false, false, false},
[aux_sym_redirected_statement_repeat1] = {false, false, false},
[aux_sym_redirected_statement_repeat2] = {false, false, false},
[aux_sym_for_statement_repeat1] = {false, false, false},
[aux_sym_if_statement_repeat1] = {false, false, false},
[aux_sym_case_statement_repeat1] = {false, false, false},
[aux_sym__case_item_last_repeat1] = {false, false, false},
[aux_sym__case_item_last_repeat2] = {false, false, false},
[aux_sym_pipeline_repeat1] = {false, false, false},
[aux_sym_command_repeat1] = {false, false, false},
[aux_sym_command_repeat2] = {false, false, false},
[aux_sym__variable_assignments_repeat1] = {false, false, false},
[aux_sym_heredoc_body_repeat1] = {false, false, false},
[aux_sym_file_redirect_repeat1] = {false, false, false},
[aux_sym_concatenation_repeat1] = {false, false, false},
[aux_sym_string_repeat1] = {false, false, false},
[aux_sym__expansion_regex_repeat1] = {false, false, false},