PRISM_EXPORTED_FUNCTION PRISM_NODISCARD pm_arena_t * pm_arena_new(void)
Returns a newly allocated and initialized arena.
PRISM_EXPORTED_FUNCTION void pm_arena_free(pm_arena_t *arena) PRISM_NONNULL(1)
Frees both the held memory and the arena itself.
#define PRISM_EXPORTED_FUNCTION
By default, we compile with -fvisibility=hidden.
#define PRISM_NODISCARD
Mark the return value of a function as important so that the compiler warns if a caller ignores it.
#define PRISM_NONNULL(...)
Mark the parameters of a function as non-null.