diff options
Diffstat (limited to 'rushs/tinyprintf/evalexpr/src/fifo_access.c')
| -rw-r--r-- | rushs/tinyprintf/evalexpr/src/fifo_access.c | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/rushs/tinyprintf/evalexpr/src/fifo_access.c b/rushs/tinyprintf/evalexpr/src/fifo_access.c deleted file mode 100644 index 1986a09..0000000 --- a/rushs/tinyprintf/evalexpr/src/fifo_access.c +++ /dev/null @@ -1,61 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> - -#include "fifo.h" - -size_t fifo_size(struct fifo *fifo) -{ - return fifo->size; -} - -void fifo_push(struct fifo *fifo, struct token *elt) -{ - struct list *new = malloc(sizeof(struct list)); - if (new == NULL) - { - return; - } - new->data = elt; - - if (fifo_size(fifo) == 0) - { - fifo->head = new; - } - new->next = NULL; - if (fifo_size(fifo) != 0) - { - fifo->tail->next = new; - } - fifo->tail = new; - - fifo->size++; -} - -struct token *fifo_head(struct fifo *fifo) -{ - return fifo->head->data; -} - -void fifo_pop(struct fifo *fifo) -{ - if (fifo_size(fifo) == 0) - { - return; - } - if (fifo_size(fifo) == 1) - { - free(fifo->head->data); - free(fifo->head); - fifo->head = NULL; - fifo->tail = NULL; - fifo->size = 0; - return; - } - - struct list *tmp = fifo->head->next; - free(fifo->head->data); - free(fifo->head); - fifo->head = tmp; - - fifo->size--; -} |
