From 4d4ae75f0b843e06c666ea192a912316a9e1497c Mon Sep 17 00:00:00 2001 From: Ben Fuhrmannek Date: Sat, 5 Feb 2022 12:23:04 +0100 Subject: sp_list length --- src/sp_list.c | 6 ++++++ src/sp_list.h | 1 + 2 files changed, 7 insertions(+) diff --git a/src/sp_list.c b/src/sp_list.c index 92e628d..ab752f7 100644 --- a/src/sp_list.c +++ b/src/sp_list.c @@ -75,3 +75,9 @@ sp_list_node *sp_list_prepend(sp_list_node *list, void *data) { new->data = data; return new; } + +size_t sp_list_len(sp_list_node *p) { + size_t num = 0; + for (; p; p = p->next) { num++; } + return num; +} diff --git a/src/sp_list.h b/src/sp_list.h index 7ceee50..81bbb29 100644 --- a/src/sp_list.h +++ b/src/sp_list.h @@ -13,5 +13,6 @@ sp_list_node *sp_list_insert(sp_list_node *, void *); sp_list_node *sp_list_prepend(sp_list_node *, void *); void sp_list_free(sp_list_node *, void (*free_data_func)(void *data)); void sp_list_free2(sp_list_node *node); +size_t sp_list_len(sp_list_node *p); #endif -- cgit v1.3