Iros
 
Loading...
Searching...
No Matches
di::container::RBTreeNode< Tag > Struct Template Reference

#include <di/container/tree/rb_tree_node.h>

Inheritance diagram for di::container::RBTreeNode< Tag >:
[legend]

Public Types

enum class  Color { Red = 0 , Black = 1 }
 

Public Member Functions

 RBTreeNode ()=default
 
constexpr auto is_left_child () const -> bool
 
constexpr auto is_right_child () const -> bool
 
constexpr auto find_min () -> RBTreeNode &
 
constexpr auto find_max () -> RBTreeNode &
 
constexpr auto predecessor () const -> RBTreeNode *
 
constexpr auto successor () const -> RBTreeNode *
 

Public Attributes

Color color { Color::Red }
 
RBTreeNodeparent { nullptr }
 
RBTreeNodeleft { nullptr }
 
RBTreeNoderight { nullptr }
 

Member Enumeration Documentation

◆ Color

template<typename Tag>
enum class di::container::RBTreeNode::Color
strong
Enumerator
Red 
Black 

Constructor & Destructor Documentation

◆ RBTreeNode()

template<typename Tag>
di::container::RBTreeNode< Tag >::RBTreeNode ( )
default

Member Function Documentation

◆ find_max()

template<typename Tag>
auto di::container::RBTreeNode< Tag >::find_max ( ) -> RBTreeNode&
inlineconstexpr

◆ find_min()

template<typename Tag>
auto di::container::RBTreeNode< Tag >::find_min ( ) -> RBTreeNode&
inlineconstexpr

◆ is_left_child()

template<typename Tag>
auto di::container::RBTreeNode< Tag >::is_left_child ( ) const -> bool
inlineconstexpr

◆ is_right_child()

template<typename Tag>
auto di::container::RBTreeNode< Tag >::is_right_child ( ) const -> bool
inlineconstexpr

◆ predecessor()

template<typename Tag>
auto di::container::RBTreeNode< Tag >::predecessor ( ) const -> RBTreeNode*
inlineconstexpr

◆ successor()

template<typename Tag>
auto di::container::RBTreeNode< Tag >::successor ( ) const -> RBTreeNode*
inlineconstexpr

Member Data Documentation

◆ color

template<typename Tag>
Color di::container::RBTreeNode< Tag >::color { Color::Red }

◆ left

template<typename Tag>
RBTreeNode* di::container::RBTreeNode< Tag >::left { nullptr }

◆ parent

template<typename Tag>
RBTreeNode* di::container::RBTreeNode< Tag >::parent { nullptr }

◆ right

template<typename Tag>
RBTreeNode* di::container::RBTreeNode< Tag >::right { nullptr }

The documentation for this struct was generated from the following file: