]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
list: Add helper macro for iterating lists
authorDiego Augusto <diego.augusto@protonmail.com>
Sat, 15 Oct 2022 17:18:15 +0000 (13:18 -0400)
committerRay Strode <rstrode@redhat.com>
Tue, 29 Nov 2022 14:22:06 +0000 (09:22 -0500)
At the moment, iterating over a ply_list_t requires an an
ugly looking for loop.

This commit adds a little sugar in the form of a
ply_list_foreach macro in the name of convenience.

src/libply/ply-list.h

index 2a3e187b9c006f2059c0096bc5680321460a70e7..1dd848f51285db18b5b979a319f00e24d9b6e8b9 100644 (file)
@@ -56,6 +56,9 @@ ply_list_node_t *ply_list_get_nth_node (ply_list_t *list,
 ply_list_node_t *ply_list_get_next_node (ply_list_t      *list,
                                          ply_list_node_t *node);
 void *ply_list_node_get_data (ply_list_node_t *node);
+
+#define ply_list_foreach(list, node) \
+        for (node = ply_list_get_first_node (list); node != NULL; node = ply_list_get_next_node (list, node))
 #endif
 
 #endif /* PLY_LIST_H */