aboutsummaryrefslogtreecommitdiff
path: root/src/common/common.h
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-01-22 10:48:21 +0100
committerCharles <sircharlesaze@gmail.com>2020-01-22 11:14:36 +0100
commit2e79b4ac22321abd69c7f1a9748b5761abaab1ec (patch)
treee7f3cb04aa24ddb39fa2ae7418aac3a69f7fe791 /src/common/common.h
parent6a83ee598406e9ee4bdd7169dfc4bb46284a2062 (diff)
downloadpush_swap-2e79b4ac22321abd69c7f1a9748b5761abaab1ec.tar.gz
push_swap-2e79b4ac22321abd69c7f1a9748b5761abaab1ec.tar.bz2
push_swap-2e79b4ac22321abd69c7f1a9748b5761abaab1ec.zip
Added micro optimisation when sorting frame == 2 and less reverse rotate when frame == full stack, norming
Diffstat (limited to 'src/common/common.h')
-rw-r--r--src/common/common.h51
1 files changed, 25 insertions, 26 deletions
diff --git a/src/common/common.h b/src/common/common.h
index 97881c8..87c4655 100644
--- a/src/common/common.h
+++ b/src/common/common.h
@@ -6,16 +6,15 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/01/18 11:20:54 by cacharle #+# #+# */
-/* Updated: 2020/01/19 13:31:27 by cacharle ### ########.fr */
+/* Updated: 2020/01/22 10:25:47 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-#include <stdio.h>
-#ifndef STACK_H
-# define STACK_H
+#ifndef COMMON_H
+# define COMMON_H
-#include <stdlib.h>
-#include "libft.h"
+# include <stdlib.h>
+# include "libft.h"
typedef enum
{
@@ -23,55 +22,55 @@ typedef enum
STATUS_FAILURE,
STATUS_ERROR,
STATUS_EOF,
-} t_status;
+} t_status;
typedef enum
{
STACK_NO_TAG,
STACK_A,
STACK_B
-} t_stack_tag;
+} t_stack_tag;
-typedef struct
+typedef struct s_stack
{
- int *elements;
+ int *elements;
t_stack_tag tag;
- int top;
+ int top;
} t_stack;
/*
** stack_core.c
*/
-t_stack *stack_new(int size);
-void stack_destroy(t_stack *stack);
-void stack_push(t_stack *stack, int n);
-void stack_pop(t_stack *stack);
-int stack_peek(t_stack *stack);
+t_stack *stack_new(int size);
+void stack_destroy(t_stack *stack);
+void stack_push(t_stack *stack, int n);
+void stack_pop(t_stack *stack);
+int stack_peek(t_stack *stack);
/*
** stack_op.c
*/
-void stack_swap(t_stack *stack);
-void stack_push_to(t_stack *from, t_stack *to);
-void stack_rotate(t_stack *stack);
-void stack_reverse_rotate(t_stack *stack);
+void stack_swap(t_stack *stack);
+void stack_push_to(t_stack *from, t_stack *to);
+void stack_rotate(t_stack *stack);
+void stack_reverse_rotate(t_stack *stack);
/*
** stack_helper.c
*/
-void stack_swap_2(t_stack *stack_a, t_stack *stack_b);
-void stack_rotate_2(t_stack *stack_a, t_stack *stack_b);
-void stack_reverse_rotate_2(t_stack *stack_a, t_stack *stack_b);
-t_bool stack_empty(t_stack *stack);
-int stack_length(t_stack *stack);
+void stack_swap_2(t_stack *stack_a, t_stack *stack_b);
+void stack_rotate_2(t_stack *stack_a, t_stack *stack_b);
+void stack_reverse_rotate_2(t_stack *stack_a, t_stack *stack_b);
+t_bool stack_empty(t_stack *stack);
+int stack_length(t_stack *stack);
/*
** parse.c
*/
-t_status parse(int argc, char **argv, t_stack *a);
+t_status parse(int argc, char **argv, t_stack *a);
#endif