#define STACK_H #ifdef STACK_H #include #include typedef struct stack { void* *data; int top; size_t capacity; } stack; stack* new_stack(size_t size); void* peek(stack *s); void* pop(stack *s); void* push(stack* s, void* data); bool stack_is_empty(stack *s); void free_stack(stack *s); #endif