22 |
compiling, linking, and/or using OpenSSL is allowed. |
compiling, linking, and/or using OpenSSL is allowed. |
23 |
*/ |
*/ |
24 |
|
|
25 |
struct list; |
typedef int (*list_iterator_t)(void *, void *); |
|
|
|
|
typedef int (*list_iterator_t)(void *item, void *data); |
|
26 |
typedef int (*list_comp_t)(void *, void *); |
typedef int (*list_comp_t)(void *, void *); |
27 |
|
|
28 |
struct list *list_create(); |
struct list *list_create(void); |
29 |
void list_destroy(struct list **list, list_iterator_t free, void *data); |
void list_destroy(struct list **, list_iterator_t, void *); |
30 |
void list_iterate(struct list *list, list_iterator_t itr, void *data); |
void list_iterate(struct list *, list_iterator_t, void *); |
31 |
void *list_current(struct list *list); |
void *list_current(struct list *); |
32 |
void *list_first(struct list *list); |
void *list_first(struct list *); |
33 |
void *list_next(struct list *list); |
void *list_next(struct list *); |
34 |
void *list_item(struct list *list, size_t n); |
void *list_item(struct list *, size_t); |
35 |
size_t list_count(struct list *list); |
size_t list_count(struct list *); |
36 |
void list_append(struct list *list, void *data); |
void list_append(struct list *, void *); |
37 |
void list_prepend(struct list *list, void *data); |
void list_prepend(struct list *, void *); |
38 |
void *list_locate(struct list *list, void *data, list_comp_t cmp); |
void *list_locate(struct list *, void *, list_comp_t); |
39 |
void *list_remove_current(struct list *list); |
void *list_remove_current(struct list *); |
40 |
void *list_remove(struct list *list, void *data, list_comp_t cmp); |
void *list_remove(struct list *, void *, list_comp_t); |
41 |
void list_append_list(struct list *a, struct list *b); |
void list_append_list(struct list *, struct list *); |
42 |
|
|
43 |
/* EOF */ |
/* EOF */ |
44 |
|
|