Fixed variable expansion errors
This commit is contained in:
@@ -17,11 +17,21 @@
|
||||
# include "errors.h"
|
||||
# include "variables.h"
|
||||
|
||||
typedef struct s_fields_ctx t_fields_ctx;
|
||||
|
||||
void parser_expand_malloc_error(t_minishell *minishell);
|
||||
char *parser_expand_variable(const char *word, size_t *i,
|
||||
t_minishell *minishell);
|
||||
char *parser_expand_word(const char *word, t_minishell *minishell,
|
||||
bool expand_vars);
|
||||
bool parser_expand_word_fields(const char *word, t_minishell *minishell,
|
||||
bool expand_vars, t_list **fields);
|
||||
bool parser_fields_append_text(char **current, const char *value,
|
||||
t_minishell *minishell);
|
||||
bool parser_fields_push_field(t_fields_ctx ctx);
|
||||
bool parser_fields_expand_unquoted_value(t_fields_ctx ctx,
|
||||
const char *expanded);
|
||||
bool parser_fields_step(const char *word, size_t *i, t_fields_ctx ctx);
|
||||
|
||||
typedef struct s_word_ctx
|
||||
{
|
||||
@@ -32,4 +42,22 @@ typedef struct s_word_ctx
|
||||
bool expand_vars;
|
||||
} t_word_ctx;
|
||||
|
||||
typedef struct s_fields_ctx
|
||||
{
|
||||
t_list **fields;
|
||||
char **current;
|
||||
bool *touched;
|
||||
bool *in_single_quote;
|
||||
bool *in_double_quote;
|
||||
t_minishell *minishell;
|
||||
bool expand_vars;
|
||||
} t_fields_ctx;
|
||||
|
||||
typedef struct s_field_state
|
||||
{
|
||||
bool touched;
|
||||
bool in_single_quote;
|
||||
bool in_double_quote;
|
||||
} t_field_state;
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user