diff options
| author | Martin Kagamino Lehoux <martin@lehoux.net> | 2026-04-08 13:14:27 +0200 |
|---|---|---|
| committer | Martin Kagamino Lehoux <martin@lehoux.net> | 2026-04-08 13:15:01 +0200 |
| commit | cf534d762754860ed5b714974f99acd282d48b3b (patch) | |
| tree | bf22341cedfb50ee7bcd4e15f85add2329783f31 /include/str.h | |
| parent | 630fcb1846aed16b9ab62bcf700f668883f4521f (diff) | |
Restructure into src/{std,json}/
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'include/str.h')
| -rw-r--r-- | include/str.h | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/include/str.h b/include/str.h deleted file mode 100644 index 2d2eb93..0000000 --- a/include/str.h +++ /dev/null @@ -1,30 +0,0 @@ -#pragma once -#include <stddef.h> -#include <stdint.h> -#include <stdio.h> - -#include "../include/memory.h" -#include "../include/types.h" - -typedef struct { - byte *data; - size len; -} Str; -u64 Str_hash64(Str s); -Str Str_copy(Arena *a, byte *data, size len); -i32 Str_fprint(FILE *w, Str s); - -typedef struct { - byte *data; - size len; -} StrView; -StrView Str_view(byte *data, size len); -Str StrView_copy(Arena *a, StrView s); - -// Macros working with both types -// Returns 1 if strings are equal, 0 otherwise -#define Str_equals(a, b) \ - ((a).len == (b).len) && (!(a).len || !memcmp((a).data, (b).data, (a).len)) -#define Str_fprint(w, s) fprintf(w, "%.*s", (i32)(s).len, (s).data) -#define S(s) \ - (Str) { s, lengthof(s) } |
