void(* RzListFree)(void *ptr)
struct rz_tree_visitor_t RTreeVisitor
RZ_API RTreeNode * rz_tree_add_node(RTree *t, RTreeNode *node, void *child_data)
RZ_API void rz_tree_reset(RTree *t)
RZ_API void rz_tree_free(RTree *t)
RZ_API void rz_tree_bfs(RTree *t, RTreeVisitor *vis)
void(* RTreeNodeVisitCb)(RTreeNode *n, RTreeVisitor *vis)
RZ_API RTree * rz_tree_new(void)
RZ_API void rz_tree_dfs(RTree *t, RTreeVisitor *vis)
struct rz_tree_node_t RTreeNode
struct rz_tree_node_t * parent
void(* discover_child)(RTreeNode *, struct rz_tree_visitor_t *)
void(* pre_visit)(RTreeNode *, struct rz_tree_visitor_t *)
void(* post_visit)(RTreeNode *, struct rz_tree_visitor_t *)