aboutsummaryrefslogtreecommitdiff
path: root/String.h
blob: 395533932b6db68cf86df214e5f995b51310a74c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef _STRING
#define _STRING

#include "BumpAlloc.h"

typedef char* String;

String String_new(BumpArena b, const char* str);
String String_newlen(BumpArena b, usize length);
String String_dup(BumpArena b, String s);
String String_concat(BumpArena b, ...);
String String_printf(BumpArena b, const char* fmt, ...);

usize  String_length(String s);
Result String_append(String s, const char* str);
Result String_prepend(String s, const char* str);
usize  String_find(String s, char c);

String String_Gnew(const char* str);
String String_Gnewlen(usize length);
String String_Gdup(String s);
String String_Gconcat(const char* str, ...);
String String_Gprintf(const char* fmt, ...);

#endif /* _STRING */