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