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
31
32
33
34
35
36
37
38
39
40
41
42
43
|
/**
* String array convenience functions
* @file strlist.h
*/
#ifndef SPM_STRLIST_H
#define SPM_STRLIST_H
#include "metadata.h"
typedef struct {
size_t num_alloc;
size_t num_inuse;
char **data;
} StrList;
StrList *strlist_init();
void strlist_remove(StrList *pStrList, size_t index);
long double strlist_item_as_long_double(StrList *pStrList, size_t index);
double strlist_item_as_double(StrList *pStrList, size_t index);
float strlist_item_as_float(StrList *pStrList, size_t index);
unsigned long long strlist_item_as_ulong_long(StrList *pStrList, size_t index);
long long strlist_item_as_long_long(StrList *pStrList, size_t index);
unsigned long strlist_item_as_ulong(StrList *pStrList, size_t index);
long strlist_item_as_long(StrList *pStrList, size_t index);
unsigned int strlist_item_as_uint(StrList *pStrList, size_t index);
int strlist_item_as_int(StrList *pStrList, size_t index);
unsigned short strlist_item_as_ushort(StrList *pStrList, size_t index);
short strlist_item_as_short(StrList *pStrList, size_t index);
unsigned char strlist_item_as_uchar(StrList *pStrList, size_t index);
char strlist_item_as_char(StrList *pStrList, size_t index);
char *strlist_item_as_str(StrList *pStrList, size_t index);
char *strlist_item(StrList *pStrList, size_t index);
void strlist_set(StrList *pStrList, size_t index, char *value);
size_t strlist_count(StrList *pStrList);
void strlist_reverse(StrList *pStrList);
void strlist_sort(StrList *pStrList, unsigned int mode);
int strlist_append_file(StrList *pStrList, char *path, ReaderFn *readerFn);
void strlist_append_strlist(StrList *pStrList1, StrList *pStrList2);
void strlist_append(StrList *pStrList, char *str);
StrList *strlist_copy(StrList *pStrList);
int strlist_cmp(StrList *a, StrList *b);
void strlist_free(StrList *pStrList);
#endif //SPM_STRLIST_H
|