]> git.meshlink.io Git - meshlink/blobdiff - src/list.h
C99 extravaganza.
[meshlink] / src / list.h
index 4fe48dbeb465fc10ca0c65ad1982f7f0dfaff002..855b42723bc448a3dfc115ecedd7abbe9e134b24 100644 (file)
@@ -77,4 +77,6 @@ extern void list_delete_list(list_t *);
 extern void list_foreach(list_t *, list_action_t);
 extern void list_foreach_node(list_t *, list_action_node_t);
 
+#define list_each(type, item, list) (type *item = (type *)1; item; item = NULL) for(list_node_t *node = (list)->head, *next; item = node ? node->data : NULL, next = node ? node->next : NULL, node; node = next)
+
 #endif                                                 /* __TINC_LIST_H__ */