34static inline cu_IoSlice_Result cu_Allocator_Alloc(
40static inline cu_IoSlice_Result cu_Allocator_Grow(
42 return allocator.
growFn(allocator.
self, old_mem, new_layout);
46static inline cu_IoSlice_Result cu_Allocator_Shrink(
48 return allocator.
shrinkFn(allocator.
self, old_mem, new_layout);
cu_IoSlice_Result(* cu_Allocator_GrowFunc)(void *self, cu_Slice old_mem, cu_Layout new_layout)
Definition allocator.h:15
cu_Allocator cu_Allocator_CAllocator(void)
Definition allocator.c:130
cu_Allocator cu_Allocator_NullAllocator(void)
Definition allocator.c:178
cu_IoSlice_Result(* cu_Allocator_ShrinkFunc)(void *self, cu_Slice old_mem, cu_Layout new_layout)
Definition allocator.h:18
void(* cu_Allocator_FreeFunc)(void *self, cu_Slice mem)
Definition allocator.h:21
cu_IoSlice_Result(* cu_Allocator_AllocFunc)(void *self, cu_Layout layout)
Definition allocator.h:12
#define CU_OPTIONAL_DECL(NAME, T)
Definition optional.h:25
Definition allocator.h:24
cu_Allocator_FreeFunc freeFn
Definition allocator.h:29
cu_Allocator_ShrinkFunc shrinkFn
Definition allocator.h:28
void * self
Definition allocator.h:25
cu_Allocator_AllocFunc allocFn
Definition allocator.h:26
cu_Allocator_GrowFunc growFn
Definition allocator.h:27