summaryrefslogtreecommitdiff
path: root/strv.h
diff options
context:
space:
mode:
Diffstat (limited to 'strv.h')
-rw-r--r--strv.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/strv.h b/strv.h
new file mode 100644
index 0000000000..43a5c5954b
--- /dev/null
+++ b/strv.h
@@ -0,0 +1,21 @@
+/*-*- Mode: C; c-basic-offset: 8 -*-*/
+
+#ifndef foostrvhfoo
+#define foostrvhfoo
+
+#include "macro.h"
+
+char *strv_find(char **l, const char *name);
+void strv_free(char **l);
+char **strv_copy(char **l);
+unsigned strv_length(char **l);
+
+char **strv_new(const char *x, ...) __sentinel;
+
+#define STRV_FOREACH(s, l) \
+ for ((s) = (l); (l) && *(s); (s)++)
+
+#define STRV_FOREACH_BACKWARDS(s, l) \
+ for (; (l) && ((s) >= (l)); (s)--)
+
+#endif