From 73b6744beafb9936f1b60bb271242399e6e7057a Mon Sep 17 00:00:00 2001 From: Corentin Lefrere Date: Mon, 8 Dec 2025 10:39:02 +0100 Subject: [PATCH] Adding args parsing in main --- main_pushswap.c | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/main_pushswap.c b/main_pushswap.c index d0c92f3..b4ad9e1 100644 --- a/main_pushswap.c +++ b/main_pushswap.c @@ -3,15 +3,42 @@ /* ::: :::::::: */ /* main_pushswap.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: agilliar +#+ +:+ +#+ */ +/* By: clefrere +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/12/02 22:15:12 by agilliar #+# #+# */ -/* Updated: 2025/12/03 15:19:10 by agilliar ### ########.fr */ +/* Updated: 2025/12/08 10:38:21 by clefrere ### ########.fr */ /* */ /* ************************************************************************** */ #include "pushswap.h" +static bool ft_streq(char *str1, char *str2) +{ + size_t i; + + i = 0; + while (str1[i] && str2[i] && str1[i] == str2[i]) + i++; + return (str1[i] == '\0' && str2[i] == '\0'); +} + + +static void arg_step(char *str, t_args *arg) +{ + if (ft_streq(str, "--simple")) + arg->algo = NULL; + else if (ft_streq(str, "--medium")) + arg->algo = NULL; + else if (ft_streq(str, "--complex")) + arg->algo = NULL; + else if (ft_streq(str, "--adaptive")) + arg->algo = NULL; + else if (ft_streq(str, "--bench")) + arg->bench = true; + else + stack_push_back(&arg->state.a, psval_parse(str)); +} + static void algorithm(const t_stacks *stacks, t_closure clos) { (void) stacks; -- 2.51.0