libdacav 0.9.0
/home/dacav/Projects/libdacav/libdacav/dacav/dacavlist.h File Reference

Double linked list implementation. More...

#include <dacav/dacav.h>

Go to the source code of this file.

Typedefs

typedef struct dlist dlist_t
 Opaque type for list.

Functions

dlist_tdlist_new ()
 Constructor that allocates a new (empty) list.
dlist_tdlist_slice (dlist_t *l, unsigned from, unsigned to, dcopy_cb_t cp)
 Constructor that allocates a list basing on slicing.
dlist_tdlist_copy (dlist_t *l, dcopy_cb_t cp)
 Constructor that makes a shallow copy of the list.
dlist_tdlist_sort (dlist_t *l, dcmp_cb_t cmp)
 Sort the list.
void dlist_free (dlist_t *l, dfree_cb_t f)
 Free the given list.
dlist_tdlist_append (dlist_t *l, void *o)
 Append an object.
dlist_tdlist_push (dlist_t *l, void *o)
 Push an object.
dlist_tdlist_pop (dlist_t *l, void **o)
 Pop an object.
int dlist_empty (dlist_t *l)
 Check if the list is empty.
dlist_tdlist_foreach (dlist_t *l, diter_cb_t f, void *ud)
 Run a callback on each element of the list.
dlist_tdlist_filter (dlist_t *l, dfilter_cb_t f, void *ud)
 Filter elements of the list.
diter_tdlist_iter_new (dlist_t **l, dcprm_t *cprm)
 Build an iterator for the list.
void dlist_iter_free (diter_t *i)
 Destroy the iterator.

Detailed Description

Double linked list implementation.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator