diff options
| -rw-r--r-- | jrk.h | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -49,6 +49,7 @@ jrk_arena jrk_arena_create(u64); void *jrk__arena_push(jrk_arena*, u64); void jrk_arena_expand(jrk_arena*, u64); +char *jrk_string_to_cstr_arena(jrk_arena*, jrk_string); jrk_string jrk_string_from_parts(char*, u64); jrk_string jrk_strchop_delim(char*, char, u64); void jrk_strput(jrk_string); @@ -97,6 +98,7 @@ i32 jrk_rand_num_range(i32, i32); #define strput jrk_strput #define strputn jrk_strputn #define string_from_parts jrk_string_from_parts +#define string_to_cstr_arena jrk_string_to_cstr_arena #define rand_num jrk_rand_num #define rand_num_range jrk_rand_num_range @@ -215,6 +217,15 @@ jrk_strchop_delim(char *str, char delim, u64 n) return (jrk_string) {0}; } +char * +jrk_string_to_cstr_arena(jrk_arena *arena, jrk_string string) +{ + char *result = arena_push_array(arena, char, string.length); + memcpy(result, string.data, string.length); + result[string.length] = '\0'; + return result; +} + void jrk_strput(jrk_string string) { |
