Lines Matching refs:head

80 #define	LIST_FOREACH_SAFE(var, head, field, tvar)		\  argument
81 for ((var) = LIST_FIRST((head)); \
87 #define SLIST_FOREACH_SAFE(var, head, field, tvar) \ argument
88 for ((var) = SLIST_FIRST((head)); \
104 #define STAILQ_EMPTY(head) ((head)->stqh_first == NULL) argument
115 #define STAILQ_FIRST(head) ((head)->stqh_first) argument
127 #define STAILQ_HEAD_INITIALIZER(head) \ argument
128 { NULL, &(head).stqh_first }
132 #define STAILQ_FOREACH(var, head, field) \ argument
133 for ((var) = ((head)->stqh_first); \
139 #define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ argument
140 for ((var) = STAILQ_FIRST((head)); \
146 #define STAILQ_INIT(head) do { \ argument
147 (head)->stqh_first = NULL; \
148 (head)->stqh_last = &(head)->stqh_first; \
153 #define STAILQ_INSERT_HEAD(head, elm, field) do { \ argument
154 if (((elm)->field.stqe_next = (head)->stqh_first) == NULL) \
155 (head)->stqh_last = &(elm)->field.stqe_next; \
156 (head)->stqh_first = (elm); \
161 #define STAILQ_INSERT_TAIL(head, elm, field) do { \ argument
163 *(head)->stqh_last = (elm); \
164 (head)->stqh_last = &(elm)->field.stqe_next; \
169 #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ argument
171 (head)->stqh_last = &(elm)->field.stqe_next; \
177 #define STAILQ_LAST(head, type, field) \ argument
178 (STAILQ_EMPTY((head)) ? \
180 ((char *)((head)->stqh_last) - offsetof(struct type, field))))
188 #define STAILQ_REMOVE(head, elm, type, field) do { \ argument
189 if ((head)->stqh_first == (elm)) { \
190 STAILQ_REMOVE_HEAD((head), field); \
192 struct type *curelm = (head)->stqh_first; \
197 (head)->stqh_last = &(curelm)->field.stqe_next; \
203 #define STAILQ_REMOVE_HEAD(head, field) do { \ argument
204 if (((head)->stqh_first = (head)->stqh_first->field.stqe_next) == \
206 (head)->stqh_last = &(head)->stqh_first; \
215 #define STAILQ_SORT(head, type, field, cmp) do { \ argument
224 while (!STAILQ_EMPTY((head))) { \
228 for (_i = 0; _i < _sz && !STAILQ_EMPTY((head)); \
230 _e = STAILQ_FIRST((head)); \
234 STAILQ_REMOVE_HEAD((head), field); \
239 _q = STAILQ_FIRST((head)); \
244 STAILQ_REMOVE_HEAD((head), \
260 STAILQ_REMOVE_HEAD((head), \
267 (head)->stqh_first = _lb.stqh_first; \
268 (head)->stqh_last = _lb.stqh_last; \
275 #define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ argument
276 for ((var) = TAILQ_FIRST((head)); \