diff options
Diffstat (limited to 'common/list.c')
-rw-r--r-- | common/list.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/common/list.c b/common/list.c index 850c8569..a7585a31 100644 --- a/common/list.c +++ b/common/list.c | |||
@@ -26,6 +26,15 @@ void list_free(list_t *list) { | |||
26 | free(list); | 26 | free(list); |
27 | } | 27 | } |
28 | 28 | ||
29 | void list_foreach(list_t *list, void (*callback)(void *item)) { | ||
30 | if (list == NULL || callback == NULL) { | ||
31 | return; | ||
32 | } | ||
33 | for (int i = 0; i < list->length; i++) { | ||
34 | callback(list->items[i]); | ||
35 | } | ||
36 | } | ||
37 | |||
29 | void list_add(list_t *list, void *item) { | 38 | void list_add(list_t *list, void *item) { |
30 | list_resize(list); | 39 | list_resize(list); |
31 | list->items[list->length++] = item; | 40 | list->items[list->length++] = item; |