summaryrefslogtreecommitdiff
path: root/lib/initd-str.h
blob: a870812d95076be98fca12161fc1be56dd51505b (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
#ifndef _initd_str_h_
#define _initd_str_h_

#include <stdbool.h>

extern char *d_string_new(const char *new);
extern void d_string_free(char *str);
extern char *d_string_append(char *ds, const char *extra);

typedef struct strarg {
	unsigned int nstr;
	char **str;
} strarg_t;

extern strarg_t *strarg_new(void);
extern void strarg_free(strarg_t *sp);
extern void strarg_add(strarg_t *sp, const char *s);
#define strarg_push strarg_add
extern void strarg_pop(strarg_t *sp);
extern bool strarg_exists(const strarg_t *sp, const char *s);
extern unsigned int strarg_get_num(const strarg_t *sp);
extern char *strarg_get_str(const strarg_t *sp, unsigned int index);
extern strarg_t *strarg_copy(const strarg_t *source);

#endif /* _initd_str_h_ */