summaryrefslogtreecommitdiff
path: root/src/util/stack.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/util/stack.h18
1 files changed, 7 insertions, 11 deletions
diff --git a/src/util/stack.h b/src/util/stack.h
index 01a48e5..8d6fc80 100644
--- a/src/util/stack.h
+++ b/src/util/stack.h
@@ -1,7 +1,9 @@
-#pragma once
+#ifndef STACK_H
+#define STACK_H
+
+#include "shared.h"
#include <stddef.h>
-#include <stdbool.h>
struct Stack {
size_t size;
@@ -14,13 +16,7 @@ void stack_push(struct Stack* stack, void* data, size_t len);
void* stack_pop(struct Stack* stack, size_t len);
void stack_free(struct Stack* stack);
-inline void stack_push_int(struct Stack* stack, int value) {
- stack_push(stack, &value, sizeof(int));
-}
+void stack_push_int(struct Stack* stack, int value);
+bool stack_pop_int(struct Stack* stack, int* value);
-inline bool stack_pop_int(struct Stack* stack, int* value) {
- void* d = stack_pop(stack, sizeof(int));
- if (d == NULL) return false;
- *value = *(int*)(d);
- return true;
-}
+#endif