From 96c320e999927d964fbd128724022e7eeb976b8d Mon Sep 17 00:00:00 2001 From: Harry Jeffery Date: Thu, 23 Nov 2017 19:12:26 +0000 Subject: Add list_find function --- src/list.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/list.c') diff --git a/src/list.c b/src/list.c index 3682185..3c648bf 100644 --- a/src/list.c +++ b/src/list.c @@ -108,4 +108,14 @@ struct list *list_from_string(const char *string, char delim) return list; } +int list_find(struct list *list, int (*cmp)(const void *, const void *), const void *key) +{ + for(size_t i = 0; i < list->len; ++i) { + if(!cmp(list->items[i], key)) { + return (int)i; + } + } + return -1; +} + /* vim:set ts=2 sts=2 sw=2 et: */ -- cgit v1.2.3