/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* command_handling.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: dkaiser a); else if (cmd == SB) stack_swap(data->b); else if (cmd == SS) run_for_both(data->a, data->b, stack_swap); else if (cmd == PA) stack_push(data->a, data->b); else if (cmd == PB) stack_push(data->b, data->a); else if (cmd == RA) stack_rotate(data->a); else if (cmd == RB) stack_rotate(data->b); else if (cmd == RR) run_for_both(data->a, data->b, stack_rotate); else if (cmd == RRA) stack_rrotate(data->a); else if (cmd == RRB) stack_rrotate(data->b); else if (cmd == RRR) run_for_both(data->a, data->b, stack_rrotate); add_cmd_to_queue(&data->cmds, cmd); } static void print_cmd(void *ptr_cmd) { enum e_pscmd cmd; cmd = *(enum e_pscmd *)ptr_cmd; if (cmd == SA) ft_putendl_fd("sa", 1); else if (cmd == SB) ft_putendl_fd("sb", 1); else if (cmd == SS) ft_putendl_fd("ss", 1); else if (cmd == PA) ft_putendl_fd("pa", 1); else if (cmd == PB) ft_putendl_fd("pb", 1); else if (cmd == RA) ft_putendl_fd("ra", 1); else if (cmd == RB) ft_putendl_fd("rb", 1); else if (cmd == RR) ft_putendl_fd("rr", 1); else if (cmd == RRA) ft_putendl_fd("rra", 1); else if (cmd == RRB) ft_putendl_fd("rrb", 1); else if (cmd == RRR) ft_putendl_fd("rrr", 1); else ft_putendl_fd("NO CMD", 1); } void print_commands(t_list *cmds) { ft_lstiter(cmds, print_cmd); }