size_t srn_block_id_t
The block id is effectively just an index in the blocks array in srn_mm_t.
srn_context_t * srn_context_make(srn_engine_t *engine)
Make an empty context, by allocating a new memory block.
int srn_context_release(srn_context_t *ctx)
void * srn_allocate(const srn_context_t *ctx, size_t size, size_t alignment)
void srn_release(const srn_context_t *ctx, void *ptr)
srn_engine_t * engine
Long term state of the compiler.
srn_block_id_t block_id
Where to allocate memory from.
struct srn_context_t * parent