From e5393671a265e1c301c6c303f21f938c4cf9ca75 Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 2 Apr 2020 15:50:13 +0200 Subject: Evaluation pipe frame (not tested) --- src/main.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index c46324f..f898bf8 100644 --- a/src/main.c +++ b/src/main.c @@ -6,7 +6,7 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/28 11:45:44 by cacharle #+# #+# */ -/* Updated: 2020/04/01 23:12:51 by charles ### ########.fr */ +/* Updated: 2020/04/03 08:56:46 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -70,9 +70,14 @@ int main(int argc, char **argv, char **envp) state.pipe_out[1] = -1; state.path = path; state.env = env; - printf("ret: %d %s\n", eval(&state, ast), strerror(errno)); + t_io_frame frame; + io_frame_init(&frame); + printf("ret: %d %s\n", eval(&frame,&state, ast), strerror(errno)); - ast_destroy(ast); + /* char buf[2048]; */ + /* printf("%s\n", getcwd(buf, 2048)); */ + /* builtin_env(NULL, state.env); */ + /* ast_destroy(ast); */ /* while ((ret = ft_next_line(STDIN_FILENO, &line)) == 1) */ /* { */ /* if (eval(parse(line)) == -1) */ @@ -80,7 +85,7 @@ int main(int argc, char **argv, char **envp) /* free(line); */ /* } */ /* free(line); */ - ft_htdestroy(path, ht_del_str_entry); + ft_htdestroy(path, free); ft_vecdestroy(env, free); return (0); } -- cgit From c0e2ee28eedc1a9a886f9729a994d77738e2eb58 Mon Sep 17 00:00:00 2001 From: Charles Date: Fri, 3 Apr 2020 15:13:08 +0200 Subject: Refactoring env, connecting pipes, preprocess draft --- src/main.c | 55 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 27 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index f898bf8..2e42601 100644 --- a/src/main.c +++ b/src/main.c @@ -6,7 +6,7 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/28 11:45:44 by cacharle #+# #+# */ -/* Updated: 2020/04/03 08:56:46 by charles ### ########.fr */ +/* Updated: 2020/04/03 14:25:48 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -38,22 +38,22 @@ int main(int argc, char **argv, char **envp) /* int ret; */ env = env_from_array(envp); - path = path_update(NULL, env_search(env, "PATH")); - - t_ast *ast; - t_line line; - t_cmd cmd; - t_eval_state state; - - cmd.argv = ft_split("ls -l", ' '); - cmd.in = NULL; - cmd.out = NULL; - cmd.is_append = false; - - line.left = ast_new(TAG_CMD, &cmd); - line.right = NULL; - line.sep = SEP_END; - ast = ast_new(TAG_LINE, &line); + /* path = path_update(NULL, env_search(env, "PATH")); */ + /* */ + /* t_ast *ast; */ + /* t_line line; */ + /* t_cmd cmd; */ + /* t_eval_state state; */ + /* */ + /* cmd.argv = ft_split("ls -l", ' '); */ + /* cmd.in = NULL; */ + /* cmd.out = NULL; */ + /* cmd.is_append = false; */ + /* */ + /* line.left = ast_new(TAG_CMD, &cmd); */ + /* line.right = NULL; */ + /* line.sep = SEP_END; */ + /* ast = ast_new(TAG_LINE, &line); */ /* printf("%p\n", ast); */ /* printf("%d\n", ast->tag); */ @@ -64,15 +64,15 @@ int main(int argc, char **argv, char **envp) /* printf("%s\n", ast->data.line.left->data.cmd.argv[0]); */ /* printf("%s\n", ast->data.line.left->data.cmd.argv[1]); */ - state.pipe_in[0] = -1; - state.pipe_in[1] = -1; - state.pipe_out[0] = -1; - state.pipe_out[1] = -1; - state.path = path; - state.env = env; - t_io_frame frame; - io_frame_init(&frame); - printf("ret: %d %s\n", eval(&frame,&state, ast), strerror(errno)); + /* state.pipe_in[0] = -1; */ + /* state.pipe_in[1] = -1; */ + /* state.pipe_out[0] = -1; */ + /* state.pipe_out[1] = -1; */ + /* state.path = path; */ + /* state.env = env; */ + /* t_io_frame frame; */ + /* io_frame_init(&frame); */ + /* printf("ret: %d %s\n", eval(&frame,&state, ast), strerror(errno)); */ /* char buf[2048]; */ /* printf("%s\n", getcwd(buf, 2048)); */ @@ -85,7 +85,8 @@ int main(int argc, char **argv, char **envp) /* free(line); */ /* } */ /* free(line); */ - ft_htdestroy(path, free); + /* ft_htdestroy(path, free); */ + printf("%s\n", preprocess("*.c", env)); ft_vecdestroy(env, free); return (0); } -- cgit From db122618b7dd0e1c2b9432e3f470c880e0d4422e Mon Sep 17 00:00:00 2001 From: Charles Date: Sat, 4 Apr 2020 19:11:05 +0200 Subject: Glob logic mainly done --- src/main.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index 2e42601..f897faa 100644 --- a/src/main.c +++ b/src/main.c @@ -6,7 +6,7 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/28 11:45:44 by cacharle #+# #+# */ -/* Updated: 2020/04/03 14:25:48 by charles ### ########.fr */ +/* Updated: 2020/04/04 18:37:03 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -32,7 +32,7 @@ int main(int argc, char **argv, char **envp) (void)argc; (void)argv; /* (void)envp; */ - t_path path; + /* t_path path; */ t_env env; /* char *line; */ /* int ret; */ @@ -86,7 +86,10 @@ int main(int argc, char **argv, char **envp) /* } */ /* free(line); */ /* ft_htdestroy(path, free); */ - printf("%s\n", preprocess("*.c", env)); + /* ms_glob("src#<{(|"); */ + char *j = ms_glob("*/"); + printf("%s\n", j); + free(j); ft_vecdestroy(env, free); return (0); } -- cgit From 4aeba6d2f03706fa21281709a138a7d3ea9797dc Mon Sep 17 00:00:00 2001 From: Charles Date: Sun, 5 Apr 2020 15:04:23 +0200 Subject: Preprocessing (glob and iterpolation) draft (not tested) --- src/main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index f897faa..d9302ad 100644 --- a/src/main.c +++ b/src/main.c @@ -6,7 +6,7 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/28 11:45:44 by cacharle #+# #+# */ -/* Updated: 2020/04/04 18:37:03 by charles ### ########.fr */ +/* Updated: 2020/04/05 12:15:57 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,6 +18,7 @@ #include "minishell.h" #include "ast.h" #include "eval.h" +#include "ms_glob.h" /* ** \brief Program entrypoint @@ -87,7 +88,7 @@ int main(int argc, char **argv, char **envp) /* free(line); */ /* ft_htdestroy(path, free); */ /* ms_glob("src#<{(|"); */ - char *j = ms_glob("*/"); + char *j = ms_glob("*/*.c"); printf("%s\n", j); free(j); ft_vecdestroy(env, free); -- cgit