38 #include <citrusleaf/cf_types.h>
48 #define CF_LL_REDUCE_DELETE (1)
49 #define CF_LL_REDUCE_INSERT (2)
50 #define CF_LL_REDUCE_MATCHED (3)
51 #define CF_LL_REDUCE_NOT_MATCHED (4)
94 #endif //EXTERNAL_LOCKS
cf_ll_iterator * cf_ll_getIterator(cf_ll *ll, bool forward)
void cf_ll_append(cf_ll *ll, cf_ll_element *e)
uint32_t cf_ll_size(cf_ll *ll)
static cf_ll_element * cf_ll_get_head(cf_ll *ll)
cf_ll_destructor destroy_fn
int cf_ll_reduce(cf_ll *ll, bool forward, cf_ll_reduce_fn fn, void *udata)
void cf_ll_insert_after(cf_ll *ll, cf_ll_element *cur, cf_ll_element *ins)
static cf_ll_element * cf_ll_get_next(cf_ll_element *e)
void cf_ll_insert_before(cf_ll *ll, cf_ll_element *cur, cf_ll_element *ins)
cf_ll_element * cf_ll_index(cf_ll *ll, int index)
cf_ll_element * cf_ll_getNext(cf_ll_iterator *iter)
void(* cf_ll_destructor)(cf_ll_element *e)
static cf_ll_element * cf_ll_get_tail(cf_ll *ll)
cf_ll_element * cf_ll_search(cf_ll *ll, cf_ll_element *e, bool forward, cf_ll_reduce_fn fn)
static cf_ll_element * cf_ll_get_prev(cf_ll_element *e)
void cf_ll_delete(cf_ll *ll, cf_ll_element *e)
void cf_ll_prepend(cf_ll *ll, cf_ll_element *e)
int(* cf_ll_reduce_fn)(cf_ll_element *e, void *udata)
int cf_ll_insert_reduce(cf_ll *ll, cf_ll_element *e, bool forward, cf_ll_reduce_fn fn, void *udata)
void cf_ll_releaseIterator(cf_ll_iterator *iter)
int cf_ll_init(cf_ll *ll, cf_ll_destructor destroy_fn, bool uselock)