blob: fe56d98240c276132405ae070902e89888657a4f (
plain)
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
26
27
28
29
30
|
#ifndef BUF_H
#define BUF_H
#include <stddef.h>
/* string views */
typedef struct {
const char *s;
size_t n;
} strv_t;
strv_t strv(const char *s);
int strv_split(strv_t *src, int chr, strv_t *dest);
/* strings */
typedef struct buf {
size_t sz, cap;
char *buf;
} str_t;
void str_init(str_t *, size_t);
void str_grow(str_t *, size_t);
void str_free(str_t *);
void str_cat(str_t *b, strv_t s);
void str_catc(str_t *b, char c);
#endif
|