Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
RbNodeVtl< Key > Class Template Reference

#include <rbNode.H>

Inheritance diagram for RbNodeVtl< Key >:
[legend]
Collaboration diagram for RbNodeVtl< Key >:
[legend]

Public Types

typedef Key key_type
 
typedef Key Key_Type
 
typedef Key key_type
 
typedef Key Key_Type
 

Public Member Functions

Key & get_key () noexcept
 
const Key & get_key () const noexcept
 
RbNodeVtl *& getL () noexcept
 
RbNodeVtl *& getR () noexcept
 
const RbNodeVtlgetL () const noexcept
 
const RbNodeVtlgetR () const noexcept
 
 RbNodeVtl (const Key &k)
 
 RbNodeVtl (Key &&k) noexcept
 
 RbNodeVtl (const RbNode_Data &control_data, const Key &k)
 
 RbNodeVtl (const RbNodeVtl &node)
 
 RbNodeVtl (RbNodeVtl &&node)
 
 RbNodeVtl (const RbNode_Data &control_data) noexcept
 
 RbNodeVtl ()
 
void reset () noexcept
 
virtual ~RbNodeVtl ()
 
Key & get_key () noexcept
 
const Key & get_key () const noexcept
 
RbNodeVtl *& getL () noexcept
 
RbNodeVtl *& getR () noexcept
 
const RbNodeVtlgetL () const noexcept
 
const RbNodeVtlgetR () const noexcept
 
 RbNodeVtl (const Key &k)
 
 RbNodeVtl (Key &&k) noexcept
 
 RbNodeVtl (const RbNode_Data &control_data, const Key &k)
 
 RbNodeVtl (const RbNodeVtl &node)
 
 RbNodeVtl (RbNodeVtl &&node)
 
 RbNodeVtl (const RbNode_Data &control_data) noexcept
 
 RbNodeVtl ()
 
void reset () noexcept
 
virtual ~RbNodeVtl ()
 
- Public Member Functions inherited from RbNode_Data
 RbNode_Data ()
 Default constructor creates a red node.
 
 RbNode_Data (SentinelCtor)
 Sentinel constructor creates a black node.
 
ColorgetColor ()
 Get reference to node color.
 
void reset ()
 Reset node to red (for reinsertion)
 
 RbNode_Data () noexcept
 
 RbNode_Data (SentinelCtor) noexcept
 
unsigned char & getColor () noexcept
 
void reset () noexcept
 

Static Public Member Functions

static RbNodeVtlkey_to_node (Key &__key) noexcept
 
static RbNodeVtlkey_to_node (Key &__key) noexcept
 

Static Public Attributes

static const size_t MaxHeight = 128
 
static RbNodeVtl *const NullPtr = & RbNodeVtl<Key>::sentinel_node
 

Private Member Functions

 RbNodeVtl (SentinelCtor)
 
 RbNodeVtl (SentinelCtor)
 

Private Attributes

Key key = Key()
 
RbNodeVtllLink
 
RbNodeVtlrLink
 

Static Private Attributes

static RbNodeVtl sentinel_node
 

Detailed Description

template<typename Key>
class RbNodeVtl< Key >

Definition at line 109 of file rbNode.H.

Member Typedef Documentation

◆ key_type [1/2]

template<typename Key >
typedef Key RbNodeVtl< Key >::key_type

Definition at line 109 of file rbNode.H.

◆ Key_Type [1/2]

template<typename Key >
typedef Key RbNodeVtl< Key >::Key_Type

Definition at line 109 of file rbNode.H.

◆ key_type [2/2]

template<typename Key >
typedef Key RbNodeVtl< Key >::key_type

Definition at line 75 of file tpl_rbNode.H.

◆ Key_Type [2/2]

template<typename Key >
typedef Key RbNodeVtl< Key >::Key_Type

Definition at line 75 of file tpl_rbNode.H.

Constructor & Destructor Documentation

◆ RbNodeVtl() [1/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const Key &  k)
inline

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [2/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( Key &&  k)
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [3/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const RbNode_Data control_data,
const Key &  k 
)
inline

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [4/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const RbNodeVtl< Key > &  node)
inline

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [5/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( RbNodeVtl< Key > &&  node)
inline

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [6/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const RbNode_Data control_data)
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [7/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( )
inline

Definition at line 109 of file rbNode.H.

◆ ~RbNodeVtl() [1/2]

template<typename Key >
virtual RbNodeVtl< Key >::~RbNodeVtl ( )
inlinevirtual

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [8/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( SentinelCtor  )
inlineprivate

Definition at line 109 of file rbNode.H.

◆ RbNodeVtl() [9/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const Key &  k)
inline

Definition at line 75 of file tpl_rbNode.H.

◆ RbNodeVtl() [10/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( Key &&  k)
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ RbNodeVtl() [11/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const RbNode_Data control_data,
const Key &  k 
)
inline

Definition at line 75 of file tpl_rbNode.H.

◆ RbNodeVtl() [12/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const RbNodeVtl< Key > &  node)
inline

Definition at line 75 of file tpl_rbNode.H.

◆ RbNodeVtl() [13/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( RbNodeVtl< Key > &&  node)
inline

Definition at line 75 of file tpl_rbNode.H.

◆ RbNodeVtl() [14/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( const RbNode_Data control_data)
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ RbNodeVtl() [15/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( )
inline

Definition at line 75 of file tpl_rbNode.H.

◆ ~RbNodeVtl() [2/2]

template<typename Key >
virtual RbNodeVtl< Key >::~RbNodeVtl ( )
inlinevirtual

Definition at line 75 of file tpl_rbNode.H.

◆ RbNodeVtl() [16/16]

template<typename Key >
RbNodeVtl< Key >::RbNodeVtl ( SentinelCtor  )
inlineprivate

Definition at line 75 of file tpl_rbNode.H.

Member Function Documentation

◆ get_key() [1/4]

template<typename Key >
const Key & RbNodeVtl< Key >::get_key ( ) const
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ get_key() [2/4]

template<typename Key >
const Key & RbNodeVtl< Key >::get_key ( ) const
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ get_key() [3/4]

template<typename Key >
Key & RbNodeVtl< Key >::get_key ( )
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ get_key() [4/4]

template<typename Key >
Key & RbNodeVtl< Key >::get_key ( )
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ getL() [1/4]

template<typename Key >
const RbNodeVtl * RbNodeVtl< Key >::getL ( ) const
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ getL() [2/4]

template<typename Key >
const RbNodeVtl * RbNodeVtl< Key >::getL ( ) const
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ getL() [3/4]

template<typename Key >
RbNodeVtl *& RbNodeVtl< Key >::getL ( )
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ getL() [4/4]

template<typename Key >
RbNodeVtl *& RbNodeVtl< Key >::getL ( )
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ getR() [1/4]

template<typename Key >
const RbNodeVtl * RbNodeVtl< Key >::getR ( ) const
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ getR() [2/4]

template<typename Key >
const RbNodeVtl * RbNodeVtl< Key >::getR ( ) const
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ getR() [3/4]

template<typename Key >
RbNodeVtl *& RbNodeVtl< Key >::getR ( )
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ getR() [4/4]

template<typename Key >
RbNodeVtl *& RbNodeVtl< Key >::getR ( )
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ key_to_node() [1/2]

template<typename Key >
static RbNodeVtl * RbNodeVtl< Key >::key_to_node ( Key &  __key)
inlinestaticnoexcept

Definition at line 109 of file rbNode.H.

◆ key_to_node() [2/2]

template<typename Key >
static RbNodeVtl * RbNodeVtl< Key >::key_to_node ( Key &  __key)
inlinestaticnoexcept

Definition at line 75 of file tpl_rbNode.H.

◆ reset() [1/2]

template<typename Key >
void RbNodeVtl< Key >::reset ( )
inlinenoexcept

Definition at line 109 of file rbNode.H.

◆ reset() [2/2]

template<typename Key >
void RbNodeVtl< Key >::reset ( )
inlinenoexcept

Definition at line 75 of file tpl_rbNode.H.

Member Data Documentation

◆ key

template<typename Key >
Key RbNodeVtl< Key >::key = Key()
private

Definition at line 109 of file rbNode.H.

◆ lLink

template<typename Key >
RbNodeVtl * RbNodeVtl< Key >::lLink
private

Definition at line 109 of file rbNode.H.

◆ MaxHeight

template<typename Key >
static const size_t RbNodeVtl< Key >::MaxHeight = 128
static

Definition at line 109 of file rbNode.H.

◆ NullPtr

template<typename Key >
RbNodeVtl< Key > *const RbNodeVtl< Key >::NullPtr = & RbNodeVtl<Key>::sentinel_node
static

Definition at line 109 of file rbNode.H.

◆ rLink

template<typename Key >
RbNodeVtl * RbNodeVtl< Key >::rLink
private

Definition at line 109 of file rbNode.H.

◆ sentinel_node

template<typename Key >
RbNodeVtl< Key > RbNodeVtl< Key >::sentinel_node
staticprivate

Definition at line 109 of file rbNode.H.


The documentation for this class was generated from the following files: