tres important

This commit is contained in:
2024-04-26 15:07:50 +02:00
parent 744ab7728d
commit 69467e0446

View File

@ -6,7 +6,7 @@
/* By: marde-vr <marde-vr@42angouleme.fr> +#+ +:+ +#+ */ /* By: marde-vr <marde-vr@42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2024/02/04 17:31:38 by tomoron #+# #+# */ /* Created: 2024/02/04 17:31:38 by tomoron #+# #+# */
/* Updated: 2024/04/26 14:41:02 by tomoron ### ########.fr */ /* Updated: 2024/04/26 15:06:06 by tomoron ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -79,98 +79,97 @@ typedef struct s_msh
extern int g_return_code; extern int g_return_code;
t_cmd *cmd_add_back(t_cmd *res, char *cmd, t_cmd_type type);
t_env *export_set_env(t_env *env, char *name, char *value, int append);
void *here_doc_variables(int write, void *data);
int set_echoctl(int value);
int add_var_to_str(char *res, char **command, t_env *env, int *is_var);
void find_cmd_path(t_msh *msh, char **paths, int *found);
t_env *env_add_back(t_env *env, char *name, char *value);
t_token *parse_cmds_to_token(t_cmd *command, t_env *env);
void exec_command_bonus(t_msh *msh, char *cmd_str);
t_token *add_token_back(t_token *res, t_token *next);
t_token *expand_wildcards(t_token *res, char *value, int is_var);
int cmd_is_builtin(t_msh *msh, char *cmd_token);
t_token *token_add_back(t_token *res, char *token, int is_var);
void child(t_msh *msh, char **cmd_args, int i);
t_token *parse_tokens(char *command, t_env *env);
void parent(t_msh *msh, int i, int cmd_count, char **cmd_args);
char *ft_get_env(t_env *env, char *var_name);
int is_fd_open(int fd);
int get_out_type(t_msh *msh, t_cmd *cmds);
void exec_commands(t_msh *msh);
void handle_here_doc(t_msh *msh, char *eof);
int get_in_type(t_msh *msh, t_cmd *t_strt, t_cmd *tokens, int here_doc); int get_in_type(t_msh *msh, t_cmd *t_strt, t_cmd *tokens, int here_doc);
int add_var_to_str(char *res, char **command, t_env *env, int *is_var);
t_env *export_set_env(t_env *env, char *name, char *value, int append);
void parent(t_msh *msh, int i, int cmd_count, char **cmd_args);
t_token *expand_wildcards(t_token *res, char *value, int is_var);
int check_tokens_syntax(t_cmd *cmd, t_cmd *last, t_env *env);
t_token *token_add_back(t_token *res, char *token, int is_var);
t_cmd *cmd_add_back(t_cmd *res, char *cmd, t_cmd_type type);
void find_cmd_path(t_msh *msh, char **paths, int *found);
void redirect_output(t_msh *msh, int i, char **cmd_args);
void redirect_input(t_msh *msh, int i, char **cmd_args);
t_env *env_add_back(t_env *env, char *name, char *value);
void print_syntax_error_bonus(t_cmd *cmd, t_cmd *cmds);
t_token *parse_cmds_to_token(t_cmd *command, t_env *env);
int ft_export(t_msh *msh, t_token *cmd, t_env *env);
void print_env_declare(t_msh *msh, t_env *env_orig);
void exec_command_bonus(t_msh *msh, char *cmd_str);
void print_cmd_type(t_cmd_type type, char *value);
t_token *add_token_back(t_token *res, t_token *next);
t_cmd *check_cmds_syntax(t_cmd *cmds, t_env *env);
int cmd_is_builtin(t_msh *msh, char *cmd_token);
void *here_doc_variables(int write, void *data);
void get_redirections(t_msh *msh, t_cmd *cmds);
void ambiguous_redirect(char *str, t_msh *msh);
void child(t_msh *msh, char **cmd_args, int i);
int cmd_is_forkable_builtin(char *cmd_token);
t_token *parse_tokens(char *command, t_env *env);
void delete_from_env(t_msh *msh, char *name);
char *ft_get_env(t_env *env, char *var_name);
int get_out_type(t_msh *msh, t_cmd *cmds);
void handle_here_doc(t_msh *msh, char *eof);
void signal_handler_interactive(int signum); void signal_handler_interactive(int signum);
int get_token_len(char *cmd, t_env *env); int get_token_len(char *cmd, t_env *env);
void print_syntax_error_bonus(t_cmd *cmd, t_cmd *cmds);
void signal_handler_here_doc(int signum); void signal_handler_here_doc(int signum);
t_token *parsing_syntax_error(t_token *res); t_token *parsing_syntax_error(t_token *res);
int file_access(t_msh *msh, int *found); int file_access(t_msh *msh, int *found);
void free_env_cpy(t_env *env);
void remove_command_from_msh(t_msh *msh); void remove_command_from_msh(t_msh *msh);
void get_redirections(t_msh *msh, t_cmd *cmds);
t_cmd *get_next_command(t_cmd *cmd);
int get_cmd_count(t_cmd *cmds);
int is_parenthesis(t_cmd *cmd);
void print_signaled(int status);
void ft_exit(t_msh *msh, int error_code); void ft_exit(t_msh *msh, int error_code);
void sort_wildcards_token(t_token *list); void sort_wildcards_token(t_token *list);
void redirect_input(t_msh *msh, int i, char **cmd_args);
void redirect_output(t_msh *msh, int i, char **cmd_args);
void print_cmd_type(t_cmd_type type, char *value);
int cmd_is_forkable_builtin(char *cmd_token);
void signal_handler_command(int signum); void signal_handler_command(int signum);
void ft_exit(t_msh *msh, int exit_code); void ft_exit(t_msh *msh, int exit_code);
int get_parenthesis_cmd_len(char *cmd);
char **split_paths_from_env(t_env *env); char **split_paths_from_env(t_env *env);
int add_return_code_to_str(char *res); int add_return_code_to_str(char *res);
void parse_var(t_msh *msh, char *line); void parse_var(t_msh *msh, char *line);
int get_var_name_len(char *command); int get_var_name_len(char *command);
void handle_minishellrc(t_msh *msh); void handle_minishellrc(t_msh *msh);
t_cmd *check_cmds_syntax(t_cmd *cmds, t_env *env);
char *get_tmp_file_name(t_msh *msh); char *get_tmp_file_name(t_msh *msh);
int cd(t_token *args, t_msh *msh);
int get_normal_cmd_len(char *cmd);
t_cmd *get_next_command(t_cmd *cmd);
int get_args_count(t_token *cmds); int get_args_count(t_token *cmds);
char **env_to_char_tab(t_env *env); char **env_to_char_tab(t_env *env);
int first_is_in_type(t_cmd *cmd); int first_is_in_type(t_cmd *cmd);
void print_msh_struct(t_msh *msh); void print_msh_struct(t_msh *msh);
int get_next_arg_len(char *cmd);
int check_str_syntax(char *cmd);
int is_operand_type(t_cmd *cmd);
int contains_newline(char *str); int contains_newline(char *str);
int get_cmd_count(t_cmd *cmds); int get_cmd_count(t_cmd *cmds);
int check_var_name(char *name); int check_var_name(char *name);
char **get_cmd_args(t_msh *msh); char **get_cmd_args(t_msh *msh);
int get_cmd_count(t_cmd *cmds);
int is_parenthesis(t_cmd *cmd);
int is_output_type(t_cmd *cmd);
int is_parenthesis(t_cmd *cmd);
void print_signaled(int status);
int is_input_type(t_cmd *cmd);
char *remove_path(char *token); char *remove_path(char *token);
t_env *dup_env(t_env *env);
void sort_env(t_env *env);
void print_env_declare(t_msh *msh, t_env *env_orig);
void delete_from_env(t_msh *msh, char *name);
t_cmd *parsing_bonus(char *cmd); t_cmd *parsing_bonus(char *cmd);
t_token *free_token(t_token *cmd); t_token *free_token(t_token *cmd);
void exec_commands(t_msh *msh); void exec_commands(t_msh *msh);
void free_env_cpy(t_env *env);
char *get_var_name(char *str); char *get_var_name(char *str);
int exec_builtin(t_msh *msh); int exec_builtin(t_msh *msh);
void get_cmd_path(t_msh *msh); void get_cmd_path(t_msh *msh);
int is_operand_type(t_cmd *cmd); int is_cmd_type(t_cmd *cmd);
int is_output_type(t_cmd *cmd); int set_echoctl(int value);
int print_env(t_env *env); int print_env(t_env *env);
t_cmd *free_cmd(t_cmd *cmd); t_cmd *free_cmd(t_cmd *cmd);
int ft_export(t_msh *msh, t_token *cmd, t_env *env);
int get_parenthesis_cmd_len(char *cmd);
int get_normal_cmd_len(char *cmd);
int get_next_arg_len(char *cmd);
int check_str_syntax(char *cmd);
int check_tokens_syntax(t_cmd *cmd, t_cmd *last, t_env *env);
int is_parenthesis(t_cmd *cmd);
int is_input_type(t_cmd *cmd);
void free_env(t_env *env); void free_env(t_env *env);
int ft_unset(t_msh *msh); int ft_unset(t_msh *msh);
void free_fds(t_msh *msh); void free_fds(t_msh *msh);
t_env *dup_env(t_env *env);
void sort_env(t_env *env);
void free_msh(t_msh *msh); void free_msh(t_msh *msh);
void free_msh(t_msh *msh); void free_msh(t_msh *msh);
int echo(t_token *args); int echo(t_token *args);
int exit_bt(t_msh *msh); int exit_bt(t_msh *msh);
int is_cmd_type(t_cmd *cmd);
int is_cmd_char(char c); int is_cmd_char(char c);
void ambiguous_redirect(char *str, t_msh *msh); int is_fd_open(int fd);
int cd(t_token *args, t_msh *msh);
int pwd(void); int pwd(void);
#endif #endif