1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/ucx/dlist.h Sat Dec 31 17:52:26 2011 +0100 1.3 @@ -0,0 +1,36 @@ 1.4 +/* 1.5 + * 1.6 + */ 1.7 + 1.8 +#include <stddef.h> 1.9 + 1.10 +#ifndef DLIST_H 1.11 +#define DLIST_H 1.12 + 1.13 +#ifdef __cplusplus 1.14 +extern "C" { 1.15 +#endif 1.16 + 1.17 +typedef struct UcxDlist UcxDlist; 1.18 +struct UcxDlist { 1.19 + void *data; 1.20 + UcxDlist *next; 1.21 + UcxDlist *prev; 1.22 +}; 1.23 + 1.24 +UcxDlist *ucx_dlist_append(UcxDlist *l, void *data); 1.25 +UcxDlist *ucx_dlist_prepend(UcxDlist *l, void *data); 1.26 +UcxDlist *ucx_dlist_concat(UcxDlist *l1, UcxDlist *l2); 1.27 +UcxDlist *ucx_dlist_last(UcxDlist *l); 1.28 +UcxDlist *ucx_dlist_get(UcxDlist *l, int index); 1.29 +size_t *ucx_dlist_size(UcxDlist *l); 1.30 + 1.31 +/* dlist specific functions */ 1.32 +UcxDlist *ucx_dlist_first(UcxDlist *l); 1.33 + 1.34 +#ifdef __cplusplus 1.35 +} 1.36 +#endif 1.37 + 1.38 +#endif /* DLIST_H */ 1.39 +