diff options
Diffstat (limited to 'command_handling.c')
| -rw-r--r-- | command_handling.c | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/command_handling.c b/command_handling.c new file mode 100644 index 0000000..484c858 --- /dev/null +++ b/command_handling.c @@ -0,0 +1,48 @@ +#include "libft/libft.h" +#include "push_swap.h" + +static int add_cmd_to_queue(t_list **cmds, enum e_pscmd cmd) +{ + t_list *new_elem; + enum e_pscmd *ptr_cmd; + + ptr_cmd = malloc(sizeof(enum e_pscmd)); + if (!ptr_cmd) + return 1; + + new_elem = ft_lstnew(ptr_cmd); + if (!new_elem) + { + free(ptr_cmd); + return 1; + } + ft_lstadd_back(cmds, new_elem); + return 0; +} + +void run_command(t_list **stack_a, t_list **stack_b, t_list **cmds, enum e_pscmd cmd) +{ + if (cmd == SA) + ; + else if (cmd == SB) + ; + else if (cmd == SS) + ; + else if (cmd == PA) + ; + else if (cmd == PB) + ; + else if (cmd == RA) + ; + else if (cmd == RB) + ; + else if (cmd == RR) + ; + else if (cmd == RRA) + ; + else if (cmd == RRB) + ; + else if (cmd == RRR) + ; + add_cmd_to_queue(cmds, cmd); +} |
