aboutsummaryrefslogtreecommitdiff
path: root/include/qapi/util.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/qapi/util.h')
-rw-r--r--include/qapi/util.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/qapi/util.h b/include/qapi/util.h
index 81a2b13a33..20dfea8a54 100644
--- a/include/qapi/util.h
+++ b/include/qapi/util.h
@@ -56,4 +56,17 @@ int parse_qapi_name(const char *name, bool complete);
(tail) = &(*(tail))->next; \
} while (0)
+/*
+ * For any GenericList @list, return its length.
+ */
+#define QAPI_LIST_LENGTH(list) \
+ ({ \
+ size_t _len = 0; \
+ typeof(list) _tail; \
+ for (_tail = list; _tail != NULL; _tail = _tail->next) { \
+ _len++; \
+ } \
+ _len; \
+ })
+
#endif