sdlbomber/list.h

25 lines
623 B
C
Raw Normal View History

#ifndef LIST_H
#define LIST_H
void allocthings(void);
void *allocentry(void);
2009-08-11 15:19:43 +00:00
void _addtail(listhead *header, listhead *entry);
#define addtail(head, entry) _addtail(head, &(entry->list));
/* returns previous entry, use as
* iter = delinkhead(iter);
* in foreach_list_entry loops
*/
listhead* delinkhead(listhead *entry);
#define delink(entry) delinkhead(&(entry->list));
void initheader(listhead *head);
/* listhead *head, listhead *iter, XXX *item */
#define foreach_list_entry(head, iter, item) \
for (iter = (head)->next, item = (void*) iter; iter != (head); iter = iter->next, item = (void*) iter)
#endif