159 #ifndef LEGATO_RED_BLACK_TREE_INCLUDE_GUARD 160 #define LEGATO_RED_BLACK_TREE_INCLUDE_GUARD 176 typedef struct le_rbtree_Node
208 typedef struct le_rbtree_Tree
378 #endif // LEGATO_RED_BLACK_TREE_INCLUDE_GUARD le_rbtree_Node_t * le_rbtree_GetPrev(const le_rbtree_Tree_t *treePtr, le_rbtree_Node_t *currentLinkPtr)
le_rbtree_Node_t * le_rbtree_GetFirst(const le_rbtree_Tree_t *treePtr)
le_rbtree_Node_t * le_rbtree_RemoveByKey(le_rbtree_Tree_t *treePtr, void *keyPtr)
le_rbtree_CompareFunc_t compFn
Key comparison function.
Definition: le_redBlackTree.h:212
struct le_rbtree_Node * parent
Parent link pointer.
Definition: le_redBlackTree.h:179
le_rbtree_Node_t * le_rbtree_Find(le_rbtree_Tree_t *treePtr, void *keyPtr)
size_t le_rbtree_Size(const le_rbtree_Tree_t *treePtr)
Definition: le_redBlackTree.h:176
le_rbtree_Node_t * le_rbtree_GetNext(const le_rbtree_Tree_t *treePtr, le_rbtree_Node_t *currentLinkPtr)
le_rbtree_Node_t * le_rbtree_Remove(le_rbtree_Tree_t *treePtr, le_rbtree_Node_t *linkPtr)
size_t size
Number of elements in the tree.
Definition: le_redBlackTree.h:211
le_rbtree_Node_t * le_rbtree_GetLast(const le_rbtree_Tree_t *treePtr)
struct le_rbtree_Node * left
Left node link pointer.
Definition: le_redBlackTree.h:180
void * key
Key pointer.
Definition: le_redBlackTree.h:178
le_rbtree_Color_t
Definition: le_redBlackTree.h:165
le_rbtree_Node_t * le_rbtree_Insert(le_rbtree_Tree_t *treePtr, le_rbtree_Node_t *newLinkPtr)
bool le_rbtree_IsEmpty(const le_rbtree_Tree_t *treePtr)
le_rbtree_Color_t color
Color.
Definition: le_redBlackTree.h:182
Definition: le_redBlackTree.h:208
void le_rbtree_InitTree(le_rbtree_Tree_t *treePtr, le_rbtree_CompareFunc_t compFn)
void le_rbtree_InitNode(le_rbtree_Node_t *linkPtr, void *keyPtr)
Definition: le_redBlackTree.h:169
le_rbtree_Node_t * root
Root tree node.
Definition: le_redBlackTree.h:210
Definition: le_redBlackTree.h:167
struct le_rbtree_Node * right
Right node link pointer.
Definition: le_redBlackTree.h:181
int(* le_rbtree_CompareFunc_t)(const void *key1Ptr, const void *key2Ptr)
Definition: le_redBlackTree.h:195
Definition: le_redBlackTree.h:168