28#ifndef LIBDICT_RB_TREE_H__
29#define LIBDICT_RB_TREE_H__
int(* dict_compare_func)(const void *, const void *)
void(* dict_delete_func)(void *, void *)
bool(* dict_visit_func)(const void *, void *, void *)
void ** rb_tree_search_lt(rb_tree *tree, const void *key)
size_t rb_tree_min_path_length(const rb_tree *tree)
bool rb_itor_search_lt(rb_itor *itor, const void *key)
bool rb_itor_search_ge(rb_itor *itor, const void *key)
const void * rb_itor_key(const rb_itor *itor)
rb_tree * rb_tree_new(dict_compare_func cmp_func)
bool rb_itor_next(rb_itor *itor)
bool rb_itor_valid(const rb_itor *itor)
void ** rb_tree_search_ge(rb_tree *tree, const void *key)
dict_itor * rb_dict_itor_new(rb_tree *tree)
size_t rb_tree_traverse(rb_tree *tree, dict_visit_func visit, void *user_data)
size_t rb_tree_total_path_length(const rb_tree *tree)
void ** rb_tree_search(rb_tree *tree, const void *key)
bool rb_itor_search_le(rb_itor *itor, const void *key)
void rb_itor_invalidate(rb_itor *itor)
size_t rb_tree_clear(rb_tree *tree, dict_delete_func delete_func)
size_t rb_tree_max_path_length(const rb_tree *tree)
rb_itor * rb_itor_new(rb_tree *tree)
bool rb_itor_prevn(rb_itor *itor, size_t count)
bool rb_itor_search(rb_itor *itor, const void *key)
bool rb_itor_prev(rb_itor *itor)
bool rb_itor_remove(rb_itor *itor)
void ** rb_itor_datum(rb_itor *itor)
bool rb_itor_first(rb_itor *itor)
size_t rb_tree_free(rb_tree *tree, dict_delete_func delete_func)
bool rb_itor_nextn(rb_itor *itor, size_t count)
bool rb_itor_last(rb_itor *itor)
dict_insert_result rb_tree_insert(rb_tree *tree, void *key)
bool rb_tree_verify(const rb_tree *tree)
void ** rb_tree_search_le(rb_tree *tree, const void *key)
void rb_itor_free(rb_itor *tree)
size_t rb_tree_count(const rb_tree *tree)
dict * rb_dict_new(dict_compare_func cmp_func)
dict_remove_result rb_tree_remove(rb_tree *tree, const void *key)
bool rb_tree_select(rb_tree *tree, size_t n, const void **key, void **datum)
bool rb_itor_search_gt(rb_itor *itor, const void *key)
void ** rb_tree_search_gt(rb_tree *tree, const void *key)
int rb_itor_compare(const rb_itor *i1, const rb_itor *i2)
dict_compare_func cmp_func