infix-calculator/lib/memory_pool.c

16 lines
298 B
C

#include "memory_pool.h"
#include <stddef.h>
void init_memory_pool(memory_pool_t *pool)
{
pool->free_pointer = &pool->buffer[0];
}
expression_t *allocate_expression(memory_pool_t *pool)
{
if (pool->free_pointer > pool->buffer + MEMORY_POOL_SIZE)
return NULL;
return pool->free_pointer++;
}