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_300(t_parse_table_array *v)
{
v->a[120][sym_simple_expansion] = state(280);
v->a[120][sym_expansion] = state(280);
v->a[120][sym_command_substitution] = state(280);
v->a[120][aux_sym_redirected_statement_repeat2] = state(999);
v->a[120][aux_sym_command_repeat1] = state(398);
v->a[120][sym_word] = actions(7);
v->a[120][anon_sym_for] = actions(9);
v->a[120][anon_sym_while] = actions(11);
v->a[120][anon_sym_until] = actions(11);
v->a[120][anon_sym_if] = actions(13);
v->a[120][anon_sym_case] = actions(15);
v->a[120][anon_sym_LPAREN] = actions(17);
v->a[120][anon_sym_LBRACE] = actions(19);
v->a[120][anon_sym_BANG] = actions(21);
v->a[120][anon_sym_LT] = actions(23);
v->a[120][anon_sym_GT] = actions(23);
v->a[120][anon_sym_GT_GT] = actions(23);
v->a[120][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(25);
v->a[120][anon_sym_DOLLAR] = actions(27);
v->a[120][anon_sym_DQUOTE] = actions(29);
v->a[207][anon_sym_PIPE_PIPE] = actions(629);
v->a[207][anon_sym_LT] = actions(629);
v->a[207][anon_sym_GT] = actions(629);
v->a[207][anon_sym_GT_GT] = actions(629);
v->a[207][anon_sym_LT_LT] = actions(629);
v->a[207][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(629);
v->a[207][aux_sym_concatenation_token1] = actions(629);
v->a[207][anon_sym_DOLLAR] = actions(629);
v->a[207][anon_sym_DQUOTE] = actions(629);
v->a[207][sym_raw_string] = actions(629);
v->a[207][sym_number] = actions(629);
v->a[207][anon_sym_DOLLAR_LBRACE] = actions(629);
v->a[207][anon_sym_DOLLAR_LPAREN] = actions(629);
v->a[207][anon_sym_BQUOTE] = actions(629);
v->a[207][sym_comment] = actions(3);
v->a[207][anon_sym_SEMI] = actions(629);
v->a[207][anon_sym_SEMI_SEMI] = actions(629);
v->a[207][aux_sym_terminator_token1] = actions(629);
v->a[207][sym__concat] = actions(627);
v->a[207][sym__bare_dollar] = actions(627);
return (parse_table_301(v));
}
void parse_table_301(t_parse_table_array *v)
{
v->a[120][sym_raw_string] = actions(31);
v->a[120][sym_number] = actions(31);
v->a[120][anon_sym_DOLLAR_LBRACE] = actions(33);
v->a[120][anon_sym_DOLLAR_LPAREN] = actions(35);
v->a[120][anon_sym_BQUOTE] = actions(37);
v->a[120][sym_comment] = actions(3);
v->a[120][sym_variable_name] = actions(39);
v->a[121][sym__statement_not_pipeline] = state(953);
v->a[121][sym_redirected_statement] = state(953);
v->a[121][sym_for_statement] = state(953);
v->a[121][sym_while_statement] = state(953);
v->a[121][sym_if_statement] = state(953);
v->a[121][sym_case_statement] = state(953);
v->a[121][sym_function_definition] = state(953);
v->a[121][sym_compound_statement] = state(953);
v->a[121][sym_subshell] = state(953);
v->a[121][sym_pipeline] = state(1364);
v->a[121][sym_list] = state(953);
v->a[121][sym_negated_command] = state(953);
v->a[121][sym_command] = state(953);
v->a[208][sym_word] = actions(617);
v->a[208][anon_sym_RPAREN] = actions(617);
v->a[208][anon_sym_PIPE] = actions(617);
v->a[208][anon_sym_AMP_AMP] = actions(617);
v->a[208][anon_sym_PIPE_PIPE] = actions(617);
v->a[208][anon_sym_LT] = actions(617);
v->a[208][anon_sym_GT] = actions(617);
v->a[208][anon_sym_GT_GT] = actions(617);
v->a[208][anon_sym_LT_LT] = actions(617);
v->a[208][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(617);
v->a[208][aux_sym_concatenation_token1] = actions(617);
v->a[208][anon_sym_DOLLAR] = actions(617);
v->a[208][anon_sym_DQUOTE] = actions(617);
v->a[208][sym_raw_string] = actions(617);
v->a[208][sym_number] = actions(617);
v->a[208][anon_sym_DOLLAR_LBRACE] = actions(617);
v->a[208][anon_sym_DOLLAR_LPAREN] = actions(617);
v->a[208][anon_sym_BQUOTE] = actions(617);
v->a[208][sym_comment] = actions(3);
v->a[208][anon_sym_SEMI] = actions(617);
return (parse_table_302(v));
}
void parse_table_302(t_parse_table_array *v)
{
v->a[121][sym_command_name] = state(185);
v->a[121][sym_variable_assignment] = state(247);
v->a[121][sym__variable_assignments] = state(953);
v->a[121][sym_file_redirect] = state(551);
v->a[121][sym_arithmetic_expansion] = state(401);
v->a[121][sym_concatenation] = state(555);
v->a[121][sym_string] = state(401);
v->a[121][sym_simple_expansion] = state(401);
v->a[121][sym_expansion] = state(401);
v->a[121][sym_command_substitution] = state(401);
v->a[121][aux_sym_redirected_statement_repeat2] = state(1126);
v->a[121][aux_sym_command_repeat1] = state(411);
v->a[121][sym_word] = actions(41);
v->a[121][anon_sym_for] = actions(9);
v->a[121][anon_sym_while] = actions(11);
v->a[121][anon_sym_until] = actions(11);
v->a[121][anon_sym_if] = actions(13);
v->a[121][anon_sym_case] = actions(15);
v->a[121][anon_sym_LPAREN] = actions(17);
v->a[121][anon_sym_LBRACE] = actions(19);
v->a[208][anon_sym_SEMI_SEMI] = actions(617);
v->a[208][aux_sym_terminator_token1] = actions(617);
v->a[208][sym__concat] = actions(619);
v->a[208][sym__bare_dollar] = actions(619);
v->a[209][sym_string] = state(722);
v->a[209][sym__expansion_expression] = state(771);
v->a[209][sym__expansion_regex] = state(816);
v->a[209][aux_sym__expansion_regex_repeat1] = state(722);
v->a[209][anon_sym_RBRACE] = actions(726);
v->a[209][anon_sym_RPAREN] = actions(729);
v->a[209][anon_sym_PERCENT] = actions(484);
v->a[209][anon_sym_DQUOTE] = actions(731);
v->a[209][sym_raw_string] = actions(733);
v->a[209][anon_sym_POUND] = actions(484);
v->a[209][anon_sym_COLON_DASH] = actions(488);
v->a[209][anon_sym_DASH3] = actions(488);
v->a[209][anon_sym_COLON_EQ] = actions(488);
v->a[209][anon_sym_EQ2] = actions(488);
v->a[209][anon_sym_COLON_QMARK] = actions(488);
v->a[209][anon_sym_QMARK2] = actions(488);
return (parse_table_303(v));
}
void parse_table_303(t_parse_table_array *v)
{
v->a[121][anon_sym_BANG] = actions(49);
v->a[121][anon_sym_LT] = actions(51);
v->a[121][anon_sym_GT] = actions(51);
v->a[121][anon_sym_GT_GT] = actions(51);
v->a[121][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(53);
v->a[121][anon_sym_DOLLAR] = actions(55);
v->a[121][anon_sym_DQUOTE] = actions(57);
v->a[121][sym_raw_string] = actions(59);
v->a[121][sym_number] = actions(59);
v->a[121][anon_sym_DOLLAR_LBRACE] = actions(61);
v->a[121][anon_sym_DOLLAR_LPAREN] = actions(63);
v->a[121][anon_sym_BQUOTE] = actions(65);
v->a[121][sym_comment] = actions(3);
v->a[121][sym_variable_name] = actions(67);
v->a[122][sym__statement_not_pipeline] = state(953);
v->a[122][sym_redirected_statement] = state(953);
v->a[122][sym_for_statement] = state(953);
v->a[122][sym_while_statement] = state(953);
v->a[122][sym_if_statement] = state(953);
v->a[122][sym_case_statement] = state(953);
v->a[209][anon_sym_COLON_PLUS] = actions(488);
v->a[209][anon_sym_PLUS3] = actions(488);
v->a[209][anon_sym_PERCENT_PERCENT] = actions(484);
v->a[209][aux_sym__expansion_regex_token1] = actions(735);
v->a[209][sym_comment] = actions(3);
v->a[209][sym_regex] = actions(737);
v->a[209][sym__immediate_double_hash] = actions(490);
v->a[210][sym_word] = actions(163);
v->a[210][anon_sym_BANG] = actions(463);
v->a[210][anon_sym_LT] = actions(163);
v->a[210][anon_sym_GT] = actions(163);
v->a[210][anon_sym_GT_GT] = actions(163);
v->a[210][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(163);
v->a[210][anon_sym_DASH] = actions(463);
v->a[210][anon_sym_STAR] = actions(463);
v->a[210][anon_sym_QMARK] = actions(463);
v->a[210][anon_sym_DOLLAR] = actions(463);
v->a[210][anon_sym_DQUOTE] = actions(163);
v->a[210][sym_raw_string] = actions(163);
v->a[210][sym_number] = actions(163);
return (parse_table_304(v));
}
void parse_table_304(t_parse_table_array *v)
{
v->a[122][sym_function_definition] = state(953);
v->a[122][sym_compound_statement] = state(953);
v->a[122][sym_subshell] = state(953);
v->a[122][sym_pipeline] = state(1324);
v->a[122][sym_list] = state(953);
v->a[122][sym_negated_command] = state(953);
v->a[122][sym_command] = state(953);
v->a[122][sym_command_name] = state(158);
v->a[122][sym_variable_assignment] = state(233);
v->a[122][sym__variable_assignments] = state(953);
v->a[122][sym_file_redirect] = state(551);
v->a[122][sym_arithmetic_expansion] = state(277);
v->a[122][sym_concatenation] = state(555);
v->a[122][sym_string] = state(277);
v->a[122][sym_simple_expansion] = state(277);
v->a[122][sym_expansion] = state(277);
v->a[122][sym_command_substitution] = state(277);
v->a[122][aux_sym_redirected_statement_repeat2] = state(1019);
v->a[122][aux_sym_command_repeat1] = state(298);
v->a[122][sym_word] = actions(208);
v->a[210][anon_sym_POUND] = actions(463);
v->a[210][anon_sym_DOLLAR_LBRACE] = actions(163);
v->a[210][anon_sym_DOLLAR_LPAREN] = actions(163);
v->a[210][anon_sym_BQUOTE] = actions(163);
v->a[210][sym_comment] = actions(3);
v->a[210][aux_sym__simple_variable_name_token1] = actions(465);
v->a[210][aux_sym__multiline_variable_name_token1] = actions(465);
v->a[210][anon_sym_AT] = actions(463);
v->a[210][anon_sym_0] = actions(463);
v->a[210][sym_variable_name] = actions(467);
v->a[211][sym_word] = actions(625);
v->a[211][anon_sym_RPAREN] = actions(625);
v->a[211][anon_sym_PIPE] = actions(625);
v->a[211][anon_sym_AMP_AMP] = actions(625);
v->a[211][anon_sym_PIPE_PIPE] = actions(625);
v->a[211][anon_sym_LT] = actions(625);
v->a[211][anon_sym_GT] = actions(625);
v->a[211][anon_sym_GT_GT] = actions(625);
v->a[211][anon_sym_LT_LT] = actions(625);
v->a[211][anon_sym_DOLLAR_LPAREN_LPAREN] = actions(625);
return (parse_table_305(v));
}