void free_ast(t_ast *node)
Recursively free an entire AST tree.
t_ast * create_cmd_node(char **args, int argc)
Create a NODE_COMMAND AST node.
t_ast * create_pipe_node(t_ast *left, t_ast *right)
Create a pipe AST node connecting 2 subtrees.
t_ast * create_redir_node(t_node_type type, char *file, t_ast *cmd, int quote)
Create a redirection AST node.
Central type definitions for mandatory part.
t_node_type
AST node types.