Lines Matching refs:head
45 #define HEIM_SLIST_HEAD_INITIALIZER(head) \
56 #define HEIM_SLIST_INIT(head) do { \
57 (head)->slh_first = NULL; \
65 #define HEIM_SLIST_INSERT_HEAD(head, elm, field) do { \
66 (elm)->field.sle_next = (head)->slh_first; \
67 (head)->slh_first = (elm); \
70 #define HEIM_SLIST_REMOVE_HEAD(head, field) do { \
71 (head)->slh_first = (head)->slh_first->field.sle_next; \
74 #define HEIM_SLIST_REMOVE(head, elm, type, field) do { \
75 if ((head)->slh_first == (elm)) { \
76 HEIM_SLIST_REMOVE_HEAD((head), field); \
79 struct type *curelm = (head)->slh_first; \
87 #define HEIM_SLIST_FOREACH(var, head, field) \
88 for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next)
93 #define HEIM_SLIST_EMPTY(head) ((head)->slh_first == NULL)
94 #define HEIM_SLIST_FIRST(head) ((head)->slh_first)