X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-common%2Fllist.h;h=37474e1883868fedb86ffb3319760ce71cfd6890;hb=aa157bc129efe89e13972c40a283df9a3ca46480;hp=4f48b55d81362a2e1930be4c5d9ba2f454eaed4b;hpb=e63a65b3955b173a3e8d6b78c6377a518a9922d6;p=catta diff --git a/avahi-common/llist.h b/avahi-common/llist.h index 4f48b55..37474e1 100644 --- a/avahi-common/llist.h +++ b/avahi-common/llist.h @@ -22,28 +22,32 @@ USA. ***/ -/* Some macros for maintaining doubly linked lists */ +/** \file llist.h A simple macro based linked list implementation */ #include -/* The head of the linked list. Use this in the structure that shall +#include + +AVAHI_C_DECL_BEGIN + +/** The head of the linked list. Use this in the structure that shall * contain the head of the linked list */ #define AVAHI_LLIST_HEAD(t,name) t *name -/* The pointers in the linked list's items. Use this in the item structure */ +/** The pointers in the linked list's items. Use this in the item structure */ #define AVAHI_LLIST_FIELDS(t,name) t *name##_next, *name##_prev -/* Initialize the list's head */ +/** Initialize the list's head */ #define AVAHI_LLIST_HEAD_INIT(t,head) do { (head) = NULL; } while(0) -/* Initialize a list item */ +/** Initialize a list item */ #define AVAHI_LLIST_INIT(t,name,item) do { \ t *_item = (item); \ assert(_item); \ _item->name##_prev = _item->name##_next = NULL; \ } while(0) -/* Prepend an item to the list */ +/** Prepend an item to the list */ #define AVAHI_LLIST_PREPEND(t,name,head,item) do { \ t **_head = &(head), *_item = (item); \ assert(_item); \ @@ -53,7 +57,7 @@ *_head = _item; \ } while (0) -/* Remove an item from the list */ +/** Remove an item from the list */ #define AVAHI_LLIST_REMOVE(t,name,head,item) do { \ t **_head = &(head), *_item = (item); \ assert(_item); \ @@ -68,4 +72,6 @@ _item->name##_next = _item->name##_prev = NULL; \ } while(0) +AVAHI_C_DECL_END + #endif