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

@ -14,126 +14,126 @@
void parse_table_310(t_parse_table_array *v)
{
v->a[124][anon_sym_LBRACE] = actions(309);
v->a[124][anon_sym_BANG] = actions(311);
v->a[124][anon_sym_LT] = actions(313);
v->a[124][anon_sym_GT] = actions(313);
v->a[124][anon_sym_GT_GT] = actions(313);
v->a[124][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(315);
v->a[124][anon_sym_DOLLAR] = actions(317);
v->a[124][anon_sym_DQUOTE] = actions(319);
v->a[124][sym_raw_string] = actions(321);
v->a[124][sym_number] = actions(321);
v->a[124][anon_sym_DOLLAR_LBRACE] = actions(323);
v->a[124][anon_sym_DOLLAR_LPAREN] = actions(325);
v->a[124][anon_sym_BQUOTE] = actions(327);
v->a[124][sym_comment] = actions(3);
v->a[124][sym_variable_name] = actions(329);
v->a[125][sym__statement_not_pipeline] = state(1558);
v->a[125][sym_redirected_statement] = state(956);
v->a[125][sym_for_statement] = state(956);
v->a[125][sym_while_statement] = state(956);
v->a[125][sym_if_statement] = state(956);
v->a[215][sym_comment] = actions(3);
v->a[215][anon_sym_SEMI] = actions(659);
v->a[215][anon_sym_SEMI_SEMI] = actions(659);
v->a[215][aux_sym_terminator_token1] = actions(659);
v->a[215][sym__concat] = actions(657);
v->a[216][sym_variable_assignment] = state(648);
v->a[216][sym_file_redirect] = state(651);
v->a[216][sym_heredoc_redirect] = state(651);
v->a[216][aux_sym_redirected_statement_repeat1] = state(651);
v->a[216][aux_sym__variable_assignments_repeat1] = state(648);
v->a[216][sym_word] = actions(352);
v->a[216][anon_sym_PIPE] = actions(356);
v->a[216][anon_sym_AMP_AMP] = actions(454);
v->a[216][anon_sym_PIPE_PIPE] = actions(454);
v->a[216][anon_sym_LT] = actions(352);
v->a[216][anon_sym_GT] = actions(352);
v->a[216][anon_sym_GT_GT] = actions(352);
v->a[216][anon_sym_LT_LT] = actions(454);
v->a[216][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(352);
v->a[216][anon_sym_DOLLAR] = actions(352);
return (parse_table_311(v));
}
void parse_table_311(t_parse_table_array *v)
{
v->a[125][sym_case_statement] = state(956);
v->a[125][sym_function_definition] = state(956);
v->a[125][sym_compound_statement] = state(956);
v->a[125][sym_subshell] = state(956);
v->a[125][sym_pipeline] = state(957);
v->a[125][sym_list] = state(956);
v->a[125][sym_negated_command] = state(956);
v->a[125][sym_command] = state(956);
v->a[125][sym_command_name] = state(166);
v->a[125][sym_variable_assignment] = state(234);
v->a[125][sym__variable_assignments] = state(956);
v->a[125][sym_file_redirect] = state(556);
v->a[125][sym_arithmetic_expansion] = state(280);
v->a[125][sym_concatenation] = state(549);
v->a[125][sym_string] = state(280);
v->a[125][sym_simple_expansion] = state(280);
v->a[125][sym_expansion] = state(280);
v->a[125][sym_command_substitution] = state(280);
v->a[125][aux_sym_redirected_statement_repeat2] = state(999);
v->a[125][aux_sym_command_repeat1] = state(398);
v->a[216][anon_sym_DQUOTE] = actions(352);
v->a[216][sym_raw_string] = actions(352);
v->a[216][sym_number] = actions(352);
v->a[216][anon_sym_DOLLAR_LBRACE] = actions(352);
v->a[216][anon_sym_DOLLAR_LPAREN] = actions(352);
v->a[216][anon_sym_BQUOTE] = actions(352);
v->a[216][sym_comment] = actions(3);
v->a[216][sym_variable_name] = actions(745);
v->a[217][anon_sym_PIPE] = actions(163);
v->a[217][anon_sym_AMP_AMP] = actions(163);
v->a[217][anon_sym_PIPE_PIPE] = actions(163);
v->a[217][anon_sym_BANG] = actions(739);
v->a[217][anon_sym_LT] = actions(163);
v->a[217][anon_sym_GT] = actions(163);
v->a[217][anon_sym_GT_GT] = actions(163);
v->a[217][anon_sym_LT_LT] = actions(163);
v->a[217][anon_sym_DASH] = actions(739);
v->a[217][anon_sym_STAR] = actions(739);
v->a[217][anon_sym_QMARK] = actions(739);
v->a[217][anon_sym_DOLLAR] = actions(739);
return (parse_table_312(v));
}
void parse_table_312(t_parse_table_array *v)
{
v->a[125][sym_word] = actions(7);
v->a[125][anon_sym_for] = actions(9);
v->a[125][anon_sym_while] = actions(11);
v->a[125][anon_sym_until] = actions(11);
v->a[125][anon_sym_if] = actions(13);
v->a[125][anon_sym_case] = actions(15);
v->a[125][anon_sym_LPAREN] = actions(17);
v->a[125][anon_sym_LBRACE] = actions(19);
v->a[125][anon_sym_BANG] = actions(21);
v->a[125][anon_sym_LT] = actions(23);
v->a[125][anon_sym_GT] = actions(23);
v->a[125][anon_sym_GT_GT] = actions(23);
v->a[125][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(25);
v->a[125][anon_sym_DOLLAR] = actions(27);
v->a[125][anon_sym_DQUOTE] = actions(29);
v->a[125][sym_raw_string] = actions(31);
v->a[125][sym_number] = actions(31);
v->a[125][anon_sym_DOLLAR_LBRACE] = actions(33);
v->a[125][anon_sym_DOLLAR_LPAREN] = actions(35);
v->a[125][anon_sym_BQUOTE] = actions(37);
v->a[217][anon_sym_POUND] = actions(739);
v->a[217][anon_sym_BQUOTE] = actions(163);
v->a[217][sym_comment] = actions(3);
v->a[217][aux_sym__simple_variable_name_token1] = actions(741);
v->a[217][aux_sym__multiline_variable_name_token1] = actions(741);
v->a[217][anon_sym_AT] = actions(739);
v->a[217][anon_sym_0] = actions(739);
v->a[217][anon_sym_SEMI] = actions(163);
v->a[217][anon_sym_SEMI_SEMI] = actions(163);
v->a[217][aux_sym_terminator_token1] = actions(163);
v->a[217][sym_variable_name] = actions(743);
v->a[218][sym_word] = actions(643);
v->a[218][anon_sym_RPAREN] = actions(643);
v->a[218][anon_sym_PIPE] = actions(643);
v->a[218][anon_sym_AMP_AMP] = actions(643);
v->a[218][anon_sym_PIPE_PIPE] = actions(643);
v->a[218][anon_sym_LT] = actions(643);
v->a[218][anon_sym_GT] = actions(643);
v->a[218][anon_sym_GT_GT] = actions(643);
v->a[218][anon_sym_LT_LT] = actions(643);
return (parse_table_313(v));
}
void parse_table_313(t_parse_table_array *v)
{
v->a[125][sym_comment] = actions(3);
v->a[125][sym_variable_name] = actions(39);
v->a[126][sym__statement_not_pipeline] = state(1164);
v->a[126][sym_redirected_statement] = state(1164);
v->a[126][sym_for_statement] = state(1164);
v->a[126][sym_while_statement] = state(1164);
v->a[126][sym_if_statement] = state(1164);
v->a[126][sym_case_statement] = state(1164);
v->a[126][sym_function_definition] = state(1164);
v->a[126][sym_compound_statement] = state(1164);
v->a[126][sym_subshell] = state(1164);
v->a[126][sym_pipeline] = state(1349);
v->a[126][sym_list] = state(1164);
v->a[126][sym_negated_command] = state(1164);
v->a[126][sym_command] = state(1164);
v->a[126][sym_command_name] = state(170);
v->a[126][sym_variable_assignment] = state(235);
v->a[126][sym__variable_assignments] = state(1164);
v->a[126][sym_file_redirect] = state(541);
v->a[126][sym_arithmetic_expansion] = state(276);
v->a[218][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(643);
v->a[218][aux_sym_concatenation_token1] = actions(643);
v->a[218][anon_sym_DOLLAR] = actions(643);
v->a[218][anon_sym_DQUOTE] = actions(643);
v->a[218][sym_raw_string] = actions(643);
v->a[218][sym_number] = actions(643);
v->a[218][anon_sym_DOLLAR_LBRACE] = actions(643);
v->a[218][anon_sym_DOLLAR_LPAREN] = actions(643);
v->a[218][anon_sym_BQUOTE] = actions(643);
v->a[218][sym_comment] = actions(3);
v->a[218][anon_sym_SEMI] = actions(643);
v->a[218][anon_sym_SEMI_SEMI] = actions(643);
v->a[218][aux_sym_terminator_token1] = actions(643);
v->a[218][sym__concat] = actions(641);
v->a[219][ts_builtin_sym_end] = actions(623);
v->a[219][sym_word] = actions(625);
v->a[219][anon_sym_PIPE] = actions(625);
v->a[219][anon_sym_AMP_AMP] = actions(625);
v->a[219][anon_sym_PIPE_PIPE] = actions(625);
v->a[219][anon_sym_LT] = actions(625);
return (parse_table_314(v));
}
void parse_table_314(t_parse_table_array *v)
{
v->a[126][sym_concatenation] = state(546);
v->a[126][sym_string] = state(276);
v->a[126][sym_simple_expansion] = state(276);
v->a[126][sym_expansion] = state(276);
v->a[126][sym_command_substitution] = state(276);
v->a[126][aux_sym_redirected_statement_repeat2] = state(990);
v->a[126][aux_sym_command_repeat1] = state(408);
v->a[126][sym_word] = actions(79);
v->a[126][anon_sym_for] = actions(81);
v->a[126][anon_sym_while] = actions(83);
v->a[126][anon_sym_until] = actions(83);
v->a[126][anon_sym_if] = actions(85);
v->a[126][anon_sym_case] = actions(87);
v->a[126][anon_sym_LPAREN] = actions(89);
v->a[126][anon_sym_LBRACE] = actions(93);
v->a[126][anon_sym_BANG] = actions(95);
v->a[126][anon_sym_LT] = actions(97);
v->a[126][anon_sym_GT] = actions(97);
v->a[126][anon_sym_GT_GT] = actions(97);
v->a[126][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(99);
v->a[219][anon_sym_GT] = actions(625);
v->a[219][anon_sym_GT_GT] = actions(625);
v->a[219][anon_sym_LT_LT] = actions(625);
v->a[219][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(625);
v->a[219][aux_sym_concatenation_token1] = actions(625);
v->a[219][anon_sym_DOLLAR] = actions(625);
v->a[219][anon_sym_DQUOTE] = actions(625);
v->a[219][sym_raw_string] = actions(625);
v->a[219][sym_number] = actions(625);
v->a[219][anon_sym_DOLLAR_LBRACE] = actions(625);
v->a[219][anon_sym_DOLLAR_LPAREN] = actions(625);
v->a[219][anon_sym_BQUOTE] = actions(625);
v->a[219][sym_comment] = actions(3);
v->a[219][anon_sym_SEMI] = actions(625);
v->a[219][anon_sym_SEMI_SEMI] = actions(625);
v->a[219][aux_sym_terminator_token1] = actions(625);
v->a[219][sym__concat] = actions(623);
v->a[220][sym_variable_assignment] = state(648);
v->a[220][sym_file_redirect] = state(651);
v->a[220][sym_heredoc_redirect] = state(651);
return (parse_table_315(v));
}