lazysphere/lib/stack.h
2023-05-06 00:39:44 -04:00

22 lines
462 B
C

#ifndef STACK_H
#define STACK_H
#include "def.h"
#include <stddef.h>
struct Stack {
size_t size;
size_t capacity;
void* data;
};
void stack_init(struct Stack* stack, size_t size);
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);
void stack_push_int(struct Stack* stack, int value);
bool stack_pop_int(struct Stack* stack, int* value);
#endif