summaryrefslogtreecommitdiff
path: root/src/string.h
diff options
context:
space:
mode:
authorsteven-na <noreply.github@stvnc.dev>2026-07-28 02:12:54 -0700
committersteven-na <noreply.github@stvnc.dev>2026-07-28 02:12:54 -0700
commit8bec6205ae1631dc0896fe25795b2946ed414df0 (patch)
treea40734bf042ab2236c65254bed08fac23bccc3e5 /src/string.h
parentacea02e9b90a83167d15e62741c8e8bb9f0d4b7c (diff)
Arenas and start work on strings
Diffstat (limited to 'src/string.h')
-rw-r--r--src/string.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/string.h b/src/string.h
new file mode 100644
index 0000000..1b5f136
--- /dev/null
+++ b/src/string.h
@@ -0,0 +1,18 @@
+#pragma once
+
+#include "common.h"
+#include "smrt_arena.h"
+
+#define STRNG_BASE_POS (sizeof(ez_arena_t))
+
+typedef struct {
+ u64 alloc_size;
+ u64 len;
+} strng_t;
+
+strng_t *strng_new(smrt_arena_t *arena, u64 size);
+strng_t *strng_from(smrt_arena_t *arena, char *c);
+ b32 strng_set(strng_t *string, char *c);
+ void strng_clear(strng_t *string);
+
+#define STRNG_FMT(s) (int)s->len, (s+STRNG_BASE_POS)