Nut/OS  5.0.5
API Reference
list.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define ISC_LINK_INSIST(x)
#define ISC_LIST(type)   struct { type *head, *tail; }
#define ISC_LIST_INIT(list)   do { (list).head = NULL; (list).tail = NULL; } while (0)
#define ISC_LINK(type)   struct { type *prev, *next; }
#define ISC_LINK_INIT_TYPE(elt, link, type)
#define ISC_LINK_INIT(elt, link)   ISC_LINK_INIT_TYPE(elt, link, void)
#define ISC_LINK_LINKED(elt, link)   ((void *)((elt)->link.prev) != (void *)(-1))
#define ISC_LIST_HEAD(list)   ((list).head)
#define ISC_LIST_TAIL(list)   ((list).tail)
#define ISC_LIST_EMPTY(list)   ISC_TF((list).head == NULL)
#define __ISC_LIST_PREPENDUNSAFE(list, elt, link)
#define ISC_LIST_PREPEND(list, elt, link)
#define ISC_LIST_INITANDPREPEND(list, elt, link)   __ISC_LIST_PREPENDUNSAFE(list, elt, link)
#define __ISC_LIST_APPENDUNSAFE(list, elt, link)
#define ISC_LIST_APPEND(list, elt, link)
#define ISC_LIST_INITANDAPPEND(list, elt, link)   __ISC_LIST_APPENDUNSAFE(list, elt, link)
#define __ISC_LIST_UNLINKUNSAFE_TYPE(list, elt, link, type)
#define __ISC_LIST_UNLINKUNSAFE(list, elt, link)   __ISC_LIST_UNLINKUNSAFE_TYPE(list, elt, link, void)
#define ISC_LIST_UNLINK_TYPE(list, elt, link, type)
#define ISC_LIST_UNLINK(list, elt, link)   ISC_LIST_UNLINK_TYPE(list, elt, link, void)
#define ISC_LIST_PREV(elt, link)   ((elt)->link.prev)
#define ISC_LIST_NEXT(elt, link)   ((elt)->link.next)
#define __ISC_LIST_INSERTBEFOREUNSAFE(list, before, elt, link)
#define ISC_LIST_INSERTBEFORE(list, before, elt, link)
#define __ISC_LIST_INSERTAFTERUNSAFE(list, after, elt, link)
#define ISC_LIST_INSERTAFTER(list, after, elt, link)
#define ISC_LIST_APPENDLIST(list1, list2, link)
#define ISC_LIST_ENQUEUE(list, elt, link)   ISC_LIST_APPEND(list, elt, link)
#define __ISC_LIST_ENQUEUEUNSAFE(list, elt, link)   __ISC_LIST_APPENDUNSAFE(list, elt, link)
#define ISC_LIST_DEQUEUE(list, elt, link)   ISC_LIST_UNLINK_TYPE(list, elt, link, void)
#define ISC_LIST_DEQUEUE_TYPE(list, elt, link, type)   ISC_LIST_UNLINK_TYPE(list, elt, link, type)
#define __ISC_LIST_DEQUEUEUNSAFE(list, elt, link)   __ISC_LIST_UNLINKUNSAFE_TYPE(list, elt, link, void)
#define __ISC_LIST_DEQUEUEUNSAFE_TYPE(list, elt, link, type)   __ISC_LIST_UNLINKUNSAFE_TYPE(list, elt, link, type)
#define ISC_LIST_INITIAL_TYPE(type)   { (type *)NULL, (type *)NULL }
#define ISC_LIST_INITIAL   ISC_LIST_INITIAL_TYPE(void)
#define ISC_LINK_INITIAL(type)   { (type *)-1, (type *)-1 }