aboutsummaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
authorMartin Kagamino Lehoux <martin@lehoux.net>2025-02-10 22:07:19 +0100
committerMartin Kagamino Lehoux <martin@lehoux.net>2025-02-10 22:07:19 +0100
commit803deb4a70180f987fdeb99d617631cf9a092b4d (patch)
treef20afd4d925c28cd2226237d383c773a3cd38c0b /main.c
parent8a9e6b1bd3be1041792311a86d8aac68b659e891 (diff)
fix(string): Valid string copy
Diffstat (limited to 'main.c')
-rw-r--r--main.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/main.c b/main.c
index 0910b3d..145d768 100644
--- a/main.c
+++ b/main.c
@@ -22,7 +22,10 @@ typedef struct {
int main() {
Arena perm = Arena_new(128e3);
+ // Testing string
assert(Str_equals(S("Bonjour"), S("Bonjour")));
+ Str s = S("Hello");
+ assert(Str_equals(s, Str_copy(&perm, s.data, s.len)));
// Testing JSON
printf("Arena: mem=%d B\n", Arena_get_used(perm));
JSON json_int = JSON_parse(&perm, S("123"));
@@ -39,9 +42,8 @@ int main() {
printf("Arena: mem=%d B\n", Arena_get_used(perm));
assert(*Vec_get(JSON_parse(&perm, S("[1, 2, 3]")).array, int, 1) == 2);
printf("Arena: mem=%d B\n", Arena_get_used(perm));
- Str a = S("\"abc\"");
- JSON s = JSON_parse(&perm, S("\"abc\""));
- // printf("%s (%d)\n", s.string->data, s.string->len);
- // assert(Str_equals(*JSON_parse(&perm, S("\"abc\"")).string, S("abc")) == 1);
+ JSON js = JSON_parse(&perm, S("\"abc\""));
+ assert(Str_equals(*js.string, S("abc")) == 1);
+ printf("Arena: mem=%d B\n", Arena_get_used(perm));
return 0;
}