diff options
| author | Dominik Kaiser | 2024-10-17 16:06:53 +0200 |
|---|---|---|
| committer | Dominik Kaiser | 2024-10-17 16:06:53 +0200 |
| commit | e7faa6525a007e463c06a20e438a2253287011f1 (patch) | |
| tree | e187b2fd0bebf7d0b10a6d5cc74d1edc9b9f3a73 /src/interpreter.c | |
| parent | 08f6e0bf8c5d3ebc7fb9b61f9913369cfdbebae2 (diff) | |
| download | minishell-e7faa6525a007e463c06a20e438a2253287011f1.tar.gz minishell-e7faa6525a007e463c06a20e438a2253287011f1.zip | |
yes
Diffstat (limited to 'src/interpreter.c')
| -rw-r--r-- | src/interpreter.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/src/interpreter.c b/src/interpreter.c index 2a09e6d..abaeb47 100644 --- a/src/interpreter.c +++ b/src/interpreter.c @@ -6,21 +6,21 @@ /* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/08/05 13:15:24 by dkaiser #+# #+# */ -/* Updated: 2024/08/05 13:33:16 by dkaiser ### ########.fr */ +/* Updated: 2024/10/17 16:01:23 by dkaiser ### ########.fr */ /* */ /* ************************************************************************** */ #include "minishell.h" -static int eval_pipe(t_pipe *pipe); -static int eval_cmd(t_cmd *cmd); +static int eval_pipe(t_pipe *pipe, t_env *env); +static int eval_cmd(t_cmd *cmd, t_env *env); -int eval(t_node *node) +int eval(t_node *node, t_env *env) { if (node->type == PIPE_NODE) - return (eval_pipe(&node->content.pipe)); + return (eval_pipe(&node->content.pipe, env)); else if (node->type == CMD_NODE) - return (eval_cmd(&node->content.cmd)); + return (eval_cmd(&node->content.cmd, env)); else { panic(UNREACHABLE); @@ -28,12 +28,17 @@ int eval(t_node *node) } } -static int eval_pipe(t_pipe *pipe) +static int eval_pipe(t_pipe *pipe, t_env *env) { + dbg("TODO: PIPE"); + eval_cmd(&pipe->left->content.cmd, env); + eval_cmd(&pipe->right->content.cmd, env); return (0); } -static int eval_cmd(t_cmd *cmd) +static int eval_cmd(t_cmd *cmd, t_env *env) { + printf("%s\n", cmd->args[0]); + printf("PATH=%s\n", env_get(env, "PATH")); return (0); } |
