2#define REDUCT_ARENA_H 1
17#define REDUCT_ARENA_MIN 1024
18#define REDUCT_ARENA_GROWTH \
25typedef struct reduct_arena
53#define REDUCT_ARENA_CHUNK(_arena, _size, _data) ((reduct_arena_chunk_t){(_arena), (_size), (_data)})
REDUCT_API void reduct_arena_local_init(reduct_arena_local_t *local)
Initialize a local arena state.
REDUCT_API void reduct_arena_alloc(struct reduct *reduct, size_t size, reduct_arena_chunk_t *out)
Allocate a chunk of memory from a arena.
REDUCT_API void reduct_arena_alloc_super(struct reduct *reduct, size_t size, reduct_arena_chunk_t *chunk, reduct_arena_chunk_t *out)
Allocate a super chunk that starts with the specified chunk.
REDUCT_API void reduct_arena_local_deinit(reduct_arena_local_t *local)
Deinitialize a local arena state.
Per-thread arena-related state structure.
struct reduct_arena * prev
struct reduct_arena * next