Apache Portable Runtime
Typedefs | Functions
apr_skiplist.h File Reference

APR skip list implementation. More...

#include "apr.h"
#include "apr_portable.h"
#include <stdlib.h>

Go to the source code of this file.

Typedefs

typedef int(* apr_skiplist_compare) (void *, void *)
 
typedef void(* apr_skiplist_freefunc) (void *)
 
typedef struct apr_skiplist apr_skiplist
 
typedef struct apr_skiplistnode apr_skiplistnode
 

Functions

void * apr_skiplist_alloc (apr_skiplist *sl, size_t size)
 
void apr_skiplist_free (apr_skiplist *sl, void *mem)
 
apr_status_t apr_skiplist_init (apr_skiplist **sl, apr_pool_t *p)
 
void apr_skiplist_set_compare (apr_skiplist *sl, apr_skiplist_compare XXX1, apr_skiplist_compare XXX2)
 
void apr_skiplist_add_index (apr_skiplist *sl, apr_skiplist_compare XXX1, apr_skiplist_compare XXX2)
 
apr_skiplistnodeapr_skiplist_getlist (apr_skiplist *sl)
 
void * apr_skiplist_find_compare (apr_skiplist *sl, void *data, apr_skiplistnode **iter, apr_skiplist_compare func)
 
void * apr_skiplist_find (apr_skiplist *sl, void *data, apr_skiplistnode **iter)
 
void * apr_skiplist_next (apr_skiplist *sl, apr_skiplistnode **iter)
 
void * apr_skiplist_previous (apr_skiplist *sl, apr_skiplistnode **iter)
 
apr_skiplistnodeapr_skiplist_insert_compare (apr_skiplist *sl, void *data, apr_skiplist_compare comp)
 
apr_skiplistnodeapr_skiplist_insert (apr_skiplist *sl, void *data)
 
int apr_skiplist_remove_compare (apr_skiplist *sl, void *data, apr_skiplist_freefunc myfree, apr_skiplist_compare comp)
 
int apr_skiplist_remove (apr_skiplist *sl, void *data, apr_skiplist_freefunc myfree)
 
void apr_skiplist_remove_all (apr_skiplist *sl, apr_skiplist_freefunc myfree)
 
void apr_skiplist_destroy (apr_skiplist *sl, apr_skiplist_freefunc myfree)
 
void * apr_skiplist_pop (apr_skiplist *sl, apr_skiplist_freefunc myfree)
 
void * apr_skiplist_peek (apr_skiplist *sl)
 
apr_skiplistapr_skiplist_merge (apr_skiplist *sl1, apr_skiplist *sl2)
 

Detailed Description

APR skip list implementation.