blob: 6e4ccf981484b7cfae84ad527d4dc2a7b91e7302 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#ifndef __VXGG_REWRITE___LL_H___305861098005___
#define __VXGG_REWRITE___LL_H___305861098005___
typedef int (*dll_freecb)(void*);
typedef struct dlinked dlinkedlist;
dlinkedlist* dlinkedlist_init(void);
int dlinkedlist_free(dlinkedlist **ll);
int dlinkedlist_append(dlinkedlist * const ll, void *data, dll_freecb fcb);
int dlinkedlist_prepend(dlinkedlist * const ll, void *data, dll_freecb fcb);
int dlinkedlist_insert(dlinkedlist * const ll, void *data, dll_freecb fcb, int index);
void* dlinkedlist_get(const dlinkedlist * const ll, int index);
int dlinkedlist_remove(dlinkedlist * const ll, int index);
int dlinkedlist_size(const dlinkedlist * const ll);
#define dlinkedlist_isempty(ll) (dlinkedlist_size((ll)) == 0)
#endif
|