From 3c7956e45acc0b7d73f03bee4daa9805af01f680 Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Tue, 5 Mar 2013 01:22:13 +0100 Subject: [PATCH] shl: dlist: add _first/_last helpers These helpers return the first and last elements respectively. Signed-off-by: David Herrmann --- src/shl_dlist.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/shl_dlist.h b/src/shl_dlist.h index c1d4beb..9e30dc5 100644 --- a/src/shl_dlist.h +++ b/src/shl_dlist.h @@ -102,6 +102,12 @@ static inline bool shl_dlist_empty(struct shl_dlist *head) #define shl_dlist_entry(ptr, type, member) \ shl_offsetof((ptr), type, member) +#define shl_dlist_first(head, type, member) \ + shl_dlist_entry((head)->next, type, member) + +#define shl_dlist_last(head, type, member) \ + shl_dlist_entry((head)->prev, type, member) + #define shl_dlist_for_each(iter, head) \ for (iter = (head)->next; iter != (head); iter = iter->next) -- 2.7.4