int execute_ast(t_ast *node, t_ms_data *data)
execute Abstract Syntax Tree
void shell_variable_update(t_ms_data *data, int status)
char * ft_find_path(char *cmd, t_env *envp)
function find the full path of the executed command
void handle_std_io(int *std_io, int std_fileno)
void ft_free_2d_arr(char **arr)
int handle_get_shell_variable(t_ms_data *data, const char *key)
int handle_shell_variable(t_ast *node, t_ms_data *data)
void handle_io_fd(t_ms_data *data)
close temporary input/output file descriptors and reset them to -1
void close_fds(int in, int out)
close two file descriptors
int execute(t_ms_data *data)
execute distribution function