From ad1f130deb2637fe9f864b7a812932cfbf7f3f57 Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sun, 22 Nov 2020 19:06:42 +0100 Subject: [PATCH] tupperware: list: add 'empty' predicate --- include/tupperware/list.h | 1 + src/list.c | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/include/tupperware/list.h b/include/tupperware/list.h index 96a12ba..4b474c9 100644 --- a/include/tupperware/list.h +++ b/include/tupperware/list.h @@ -64,6 +64,7 @@ struct list_node *list_node_safe_detach(struct list_node **at); struct list_node *list_pop_front(struct list *list); struct list_node *list_pop_back(struct list *list); +bool list_empty(const struct list *list); size_t list_length(const struct list *list); void list_node_concat(struct list_node *begin, struct list_node *end); diff --git a/src/list.c b/src/list.c index cbf1c02..c1c5670 100644 --- a/src/list.c +++ b/src/list.c @@ -108,6 +108,12 @@ struct list_node *list_pop_back(struct list *list) { return list_pop_front(list); } +bool list_empty(const struct list *list) { + if (!list) + return true; + return list->head == NULL; +} + size_t list_length(const struct list *list) { if (!list || !list->head) return 0;