/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* push_swap.h :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: tmaze +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/02/21 14:13:53 by tmaze #+# #+# */ /* Updated: 2019/02/23 15:46:05 by tmaze ### ########.fr */ /* */ /* ************************************************************************** */ #ifndef PUSH_SWAP_H # define PUSH_SWAP_H # include # include # include "libft.h" typedef struct s_stack { int nb; struct s_stack *next; } t_stack; typedef struct s_psdata { t_stack *a; t_stack *b; size_t size_a; size_t size_b; t_list op; } t_psdata; t_stack *ps_stknew(int nb); void *ps_stkpsh(t_stack **s, t_stack *new); t_stack *ps_stkpop(t_stack **s); void ps_stkclean(t_psdata *data); void ps_swap(t_psdata *data, char c); void ps_sswap(t_psdata *data); void ps_push(t_psdata *data, char c); void ps_rot(t_psdata *data, char c); void ps_rrot(t_psdata *data); void ps_rerot(t_stack **s); void ps_rrerot(t_stack **a, t_stack **b); #endif