Initial commit

This is working repository now. I had to clean this up due to
my f_ups, that made this simple repo around 200MB large.

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
This commit is contained in:
Piotr Krygier
2022-06-28 09:54:41 +02:00
committed by Piotr Krygier
commit 493afb05e6
56 changed files with 5574 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
/**
* @file stack.h
* @author Piotr Krygier (everyonecancode@gmail.com)
* @brief
* @version 0.1
* @date 2024-05-01
*
* @copyright Copyright (c) 2024
*
*/
#ifndef STACK_H
#define STACK_H
#define RSE_STACK_DEFINE(name, type, size) \
struct name { \
type data[size]; \
int top; \
}
#define RSE_STACK_PUSH(stack, value) \
stack.data[++stack.top] = value
#define RSE_STACK_POP(stack) \
stack.data[stack.top--]
#define RSE_STACK_TOP(stack) \
stack.data[stack.top]
#define RSE_STACK_IS_EMPTY(stack) \
(stack.top == -1)
#define RSE_STACK_IS_FULL(stack, size) \
(stack.top == size - 1)
#define RSE_STACK_INIT(stack) \
(stack.top = -1)
#define RSE_STACK_SIZE(stack) \
(stack.top + 1)
#define RSE_STACK_CLEAR(stack) \
(stack.top = -1)
#endif // STACK_H