blob: d3c8b12509f4793f2c52035ea33ccdfb6cb475f2 (
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
31
|
typedef struct Node_s {
struct Node_s *next;
char *cont;
} Node;
typedef struct List_s {
Node *first;
Node *last;
} List;
List *list_new(void);
int list_append(List *l, char *item);
int list_len(List *l);
void list_free(List *l);
char *list_get_at(List *l, int index);
int list_delete_at(List *l, int index);
int list_insert_before(List *l, char *item, int index);
void list_sort(List *l);
int list_quicksort(List *l);
List *list_split(char *str, char *splitstr);
char *list_join(List *l, char *joiner);
typedef struct Iterator_s {
List *list;
Node *current;
} Iterator;
Iterator *list_iterator_new(List *l);
void list_iterator_free(Iterator *i);
char *list_iterator_next(Iterator *it);
|