struct sol_arena * sol_arena_new(void)
Creates an Arena.
#define SOL_ATTR_PRINTF(fmt, arg)
Specifies that a function takes printf style arguments which should be type-checked against a format ...
Definition: sol-macros.h:189
int sol_arena_slice_dup_str_n(struct sol_arena *arena, struct sol_str_slice *dst, const char *src, size_t n)
Store a copy of at most n characters of a given string in the arena.
char * sol_arena_str_dup_n(struct sol_arena *arena, const char *str, size_t n)
Store a copy of at most n characters of a given string in the arena.
int sol_arena_slice_dup_str(struct sol_arena *arena, struct sol_str_slice *dst, const char *src)
Store a copy of a given string in the arena.
int char * sol_arena_strdup(struct sol_arena *arena, const char *str)
Store a copy of a given string in the arena.
These are common Soletta macros.
String slice type.
Definition: sol-str-slice.h:84
struct sol_arena sol_arena
Sol Arena type.
Definition: sol-arena.h:54
These are routines that Soletta provides for its string slice implementation.
int sol_arena_slice_dup(struct sol_arena *arena, struct sol_str_slice *dst, struct sol_str_slice src)
Store a copy of a given string slice in the arena.
char * sol_arena_strdup_slice(struct sol_arena *arena, const struct sol_str_slice slice)
Store a copy of a given string slice in the arena.
These are routines that Soletta provides for its vector implementation.
void sol_arena_del(struct sol_arena *arena)
Delete the Arena.
int sol_arena_slice_sprintf(struct sol_arena *arena, struct sol_str_slice *dst, const char *fmt,...) SOL_ATTR_PRINTF(3
Store the output of 'sprintf()' in the arena.