gdsl  1.7
_gdsl_bintree.h File Reference

Go to the source code of this file.

Typedefs

typedef struct _gdsl_bintree * _gdsl_bintree_t
 GDSL low-level binary tree type.
typedef int(* _gdsl_bintree_map_func_t )(const _gdsl_bintree_t TREE, void *USER_DATA)
 GDSL low-level binary tree map function type.
typedef void(* _gdsl_bintree_write_func_t )(const _gdsl_bintree_t TREE, FILE *OUTPUT_FILE, void *USER_DATA)
 GDSL low-level binary tree write function type.

Functions

_gdsl_bintree_t _gdsl_bintree_alloc (const gdsl_element_t E, const _gdsl_bintree_t LEFT, const _gdsl_bintree_t RIGHT)
 Create a new low-level binary tree.
void _gdsl_bintree_free (_gdsl_bintree_t T, const gdsl_free_func_t FREE_F)
 Destroy a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_copy (const _gdsl_bintree_t T, const gdsl_copy_func_t COPY_F)
 Copy a low-level binary tree.
bool _gdsl_bintree_is_empty (const _gdsl_bintree_t T)
 Check if a low-level binary tree is empty.
bool _gdsl_bintree_is_leaf (const _gdsl_bintree_t T)
 Check if a low-level binary tree is reduced to a leaf.
bool _gdsl_bintree_is_root (const _gdsl_bintree_t T)
 Check if a low-level binary tree is a root.
gdsl_element_t _gdsl_bintree_get_content (const _gdsl_bintree_t T)
 Get the root content of a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_get_parent (const _gdsl_bintree_t T)
 Get the parent tree of a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_get_left (const _gdsl_bintree_t T)
 Get the left sub-tree of a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_get_right (const _gdsl_bintree_t T)
 Get the right sub-tree of a low-level binary tree.
_gdsl_bintree_t_gdsl_bintree_get_left_ref (const _gdsl_bintree_t T)
 Get the left sub-tree reference of a low-level binary tree.
_gdsl_bintree_t_gdsl_bintree_get_right_ref (const _gdsl_bintree_t T)
 Get the right sub-tree reference of a low-level binary tree.
ulong _gdsl_bintree_get_height (const _gdsl_bintree_t T)
 Get the height of a low-level binary tree.
ulong _gdsl_bintree_get_size (const _gdsl_bintree_t T)
 Get the size of a low-level binary tree.
void _gdsl_bintree_set_content (_gdsl_bintree_t T, const gdsl_element_t E)
 Set the root element of a low-level binary tree.
void _gdsl_bintree_set_parent (_gdsl_bintree_t T, const _gdsl_bintree_t P)
 Set the parent tree of a low-level binary tree.
void _gdsl_bintree_set_left (_gdsl_bintree_t T, const _gdsl_bintree_t L)
 Set left sub-tree of a low-level binary tree.
void _gdsl_bintree_set_right (_gdsl_bintree_t T, const _gdsl_bintree_t R)
 Set right sub-tree of a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_rotate_left (_gdsl_bintree_t *T)
 Left rotate a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_rotate_right (_gdsl_bintree_t *T)
 Right rotate a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_rotate_left_right (_gdsl_bintree_t *T)
 Left-right rotate a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_rotate_right_left (_gdsl_bintree_t *T)
 Right-left rotate a low-level binary tree.
_gdsl_bintree_t _gdsl_bintree_map_prefix (const _gdsl_bintree_t T, const _gdsl_bintree_map_func_t MAP_F, void *USER_DATA)
 Parse a low-level binary tree in prefixed order.
_gdsl_bintree_t _gdsl_bintree_map_infix (const _gdsl_bintree_t T, const _gdsl_bintree_map_func_t MAP_F, void *USER_DATA)
 Parse a low-level binary tree in infixed order.
_gdsl_bintree_t _gdsl_bintree_map_postfix (const _gdsl_bintree_t T, const _gdsl_bintree_map_func_t MAP_F, void *USER_DATA)
 Parse a low-level binary tree in postfixed order.
void _gdsl_bintree_write (const _gdsl_bintree_t T, const _gdsl_bintree_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Write the content of all nodes of a low-level binary tree to a file.
void _gdsl_bintree_write_xml (const _gdsl_bintree_t T, const _gdsl_bintree_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Write the content of a low-level binary tree to a file into XML.
void _gdsl_bintree_dump (const _gdsl_bintree_t T, const _gdsl_bintree_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Dump the internal structure of a low-level binary tree to a file.