]> git.corax.cc Git - ccc/commitdiff
ccc: Add assoc_array_foreach() method
authorMatthias Kruk <m@m10k.eu>
Wed, 22 Jul 2020 15:52:48 +0000 (00:52 +0900)
committerMatthias Kruk <m@m10k.eu>
Wed, 22 Jul 2020 15:52:48 +0000 (00:52 +0900)
src/assoc_array.c
src/assoc_array.h

index 5230d5b6752959e3c1c8b04a27925f1f98f5b893..15702dc60014ab6615abfb1c0831709d8317e138 100644 (file)
@@ -135,3 +135,16 @@ int assoc_array_drop(struct assoc_array *array, const char *key)
 
        return(ret_val);
 }
+
+void assoc_array_foreach(struct assoc_array *array,
+                        void (*func)(const char*, void*, void*),
+                        void *arg3)
+{
+       struct item *cur;
+
+       for(cur = array->head; cur; cur = cur->next) {
+               func(cur->key, cur->data, arg3);
+       }
+
+       return;
+}
index 978582af89582e4d0d760193f3cc5e812fba0bd6..310d68792078cd5309e9dc72a07ad3685dbccb08 100644 (file)
@@ -10,4 +10,6 @@ int assoc_array_get(struct assoc_array*, const char*, void**);
 int assoc_array_set(struct assoc_array*, const char*, const void*);
 int assoc_array_drop(struct assoc_array*, const char*);
 
+int assoc_array_foreach(struct assoc_array*, void (*)(const char*, void *, void*), void*);
+
 #endif /* ASSOC_ARRAY_H */