Files
arena-allocator/include/arena.h
2023-06-03 11:37:06 +02:00

20 lines
359 B
C

#ifndef ARENA_H
#define ARENA_H
#include <stddef.h> // ptrdiff_t
typedef struct arena {
void *begin,
*next,
*prev;
size_t cap;
} __attribute__((aligned(sizeof(void*)))) arena_t;
arena_t* arena_new();
void arena_reset(arena_t* a);
void* arena_alloc(arena_t* a, size_t len);
void* arena_realloc_tail(arena_t* a, size_t len);
#endif