8 #ifndef RED_BLACK_TREE_H
9 #define RED_BLACK_TREE_H
69 void (*DestFunc)(
void*),
70 void (*InfoDestFunc)(
void*),
71 void (*PrintFunc)(
const void*),
72 void (*PrintInfo)(
void*));
void(* DestroyKey)(void *a)
struct rb_red_blk_node * parent
rb_red_blk_node * RBTreeInsert(rb_red_blk_tree *tree, void *key, void *info)
struct rb_red_blk_node rb_red_blk_node
void(* PrintKey)(const void *a)
rb_red_blk_node * TreeSuccessor(rb_red_blk_tree *tree, rb_red_blk_node *x)
int(* Compare)(const void *a, const void *b)
void RBDelete(rb_red_blk_tree *tree, rb_red_blk_node *z)
void(* DestroyInfo)(void *a)
stk_stack * RBEnumerate(rb_red_blk_tree *tree, void *low, void *high)
void NullFunction(void *junk)
rb_red_blk_tree * RBTreeCreate(int(*CompFunc)(const void *, const void *), void(*DestFunc)(void *), void(*InfoDestFunc)(void *), void(*PrintFunc)(const void *), void(*PrintInfo)(void *))
void RBTreePrint(rb_red_blk_tree *tree)
rb_red_blk_node * TreePredecessor(rb_red_blk_tree *tree, rb_red_blk_node *x)
void(* PrintInfo)(void *a)
void RBTreeDestroy(rb_red_blk_tree *tree)
struct rb_red_blk_tree rb_red_blk_tree
rb_red_blk_node * RBExactQuery(rb_red_blk_tree *tree, void *q)
struct rb_red_blk_node * right
struct rb_red_blk_node * left