20 #ifndef _INDEX_LIST_H_ 21 #define _INDEX_LIST_H_ 1 24 #define EMPTY ((u32)~0) 43 u8 *vector,
u32 elsize,
48 addme = (
index_slist_t *)(vector + offset + elsize*index_to_add);
52 headp->
next = index_to_add;
56 headp->
next = index_to_add;
74 u8 *vector,
u32 elsize,
81 findme = (
index_slist_t *)(vector + offset + elsize*index_to_delete);
83 if (headp->
next == index_to_delete) {
91 while (cur != findme) {
117 u32 index_to_delete);
struct index_slist_ index_slist_t
struct index_dlist_ index_dlist_t
void index_dlist_addtail(u32 head_index, u8 *vector, u32 elsize, u32 offset, u32 index_to_add)
void index_slist_addhead(index_slist_t *headp, u8 *vector, u32 elsize, u32 offset, u32 index)
static int index_slist_remelem_inline(index_slist_t *headp, u8 *vector, u32 elsize, u32 offset, u32 index_to_delete)
int index_slist_remelem(index_slist_t *headp, u8 *vector, u32 elsize, u32 offset, u32 index)
template key/value backing page structure
static void index_slist_addhead_inline(index_slist_t *headp, u8 *vector, u32 elsize, u32 offset, u32 index_to_add)
u32 index_dlist_remelem(u32 head_index, u8 *vector, u32 elsize, u32 offset, u32 index_to_delete)