BFLibCPP 0.1
CPP Library
Loading...
Searching...
No Matches
BF::RBTree< T, S >::RBNode Class Reference

#include <rbtree.hpp>

Inheritance diagram for BF::RBTree< T, S >::RBNode:
Collaboration diagram for BF::RBTree< T, S >::RBNode:

Public Member Functions

 RBNode ()
 
virtual ~RBNode ()
 
virtual bool isNull () const
 
virtual const RBNodeleft () const
 
virtual const RBNoderight () const
 
- Public Member Functions inherited from BF::BinTree< T, S >::BinNode
object () const
 
const BinNodeparent () const
 
virtual bool isLeaf () const
 
bool isRoot () const
 
char childType () const
 
- Public Member Functions inherited from BF::Object
 Object ()
 
 Object (Object &obj)
 
virtual ~Object ()
 

Protected Member Functions

virtual void printObject () const
 
virtual RBNodeleft ()
 
virtual RBNoderight ()
 
virtual void setLeft (typename BinTree< T, S >::BinNode *left)
 
virtual void setRight (typename BinTree< T, S >::BinNode *right)
 
void print () const
 
virtual unsigned char childCount () const
 
virtual RBNodeclone ()
 
virtual RBNodegrandParent ()
 
virtual RBNodepibling ()
 
virtual RBNodesibling ()
 
char color () const
 
void setColor (char color)
 
unsigned char colorCount () const
 
void setColorCount (unsigned char count)
 
- Protected Member Functions inherited from BF::BinTree< T, S >::BinNode
 BinNode ()
 
 BinNode (T object)
 
virtual ~BinNode ()
 
int level () const
 
virtual void setLeft (BinNode *left)
 
virtual void setRight (BinNode *right)
 
BinNode ** leftAddr ()
 
BinNode ** rightAddr ()
 

Friends

class RBTree< T, S >
 

Additional Inherited Members

- Static Public Member Functions inherited from BF::Object
static void retain (Object *obj)
 
static void release (Object *obj)
 
static int retainCount (Object *obj)
 
static int retainCount (Object &obj)
 
- Protected Attributes inherited from BF::BinTree< T, S >::BinNode
BinNode_parent
 
BinNode ** _location
 
_obj
 

Constructor & Destructor Documentation

◆ RBNode()

template<typename T , typename S = int>
BF::RBTree< T, S >::RBNode::RBNode ( )
inline
Here is the call graph for this function:

◆ ~RBNode()

template<typename T , typename S = int>
virtual BF::RBTree< T, S >::RBNode::~RBNode ( )
inlinevirtual

Member Function Documentation

◆ childCount()

template<typename T , typename S = int>
virtual unsigned char BF::RBTree< T, S >::RBNode::childCount ( ) const
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ clone()

template<typename T , typename S = int>
virtual RBNode * BF::RBTree< T, S >::RBNode::clone ( )
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Reimplemented in BF::RBTree< T, S >::RBNodeNonnull, and BF::RBTree< T, S >::RBNodeNull.

Here is the call graph for this function:

◆ color()

template<typename T , typename S = int>
char BF::RBTree< T, S >::RBNode::color ( ) const
inlineprotected

◆ colorCount()

template<typename T , typename S = int>
unsigned char BF::RBTree< T, S >::RBNode::colorCount ( ) const
inlineprotected

◆ grandParent()

template<typename T , typename S = int>
virtual RBNode * BF::RBTree< T, S >::RBNode::grandParent ( )
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ isNull()

template<typename T , typename S = int>
virtual bool BF::RBTree< T, S >::RBNode::isNull ( ) const
inlinevirtual

◆ left() [1/2]

template<typename T , typename S = int>
virtual RBNode * BF::RBTree< T, S >::RBNode::left ( )
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ left() [2/2]

template<typename T , typename S = int>
virtual const RBNode * BF::RBTree< T, S >::RBNode::left ( ) const
inlinevirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ pibling()

template<typename T , typename S = int>
virtual RBNode * BF::RBTree< T, S >::RBNode::pibling ( )
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ print()

template<typename T , typename S = int>
void BF::RBTree< T, S >::RBNode::print ( ) const
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ printObject()

template<typename T , typename S = int>
virtual void BF::RBTree< T, S >::RBNode::printObject ( ) const
inlineprotectedvirtual

Reimplemented in BF::RBTree< T, S >::RBNodeNull.

◆ right() [1/2]

template<typename T , typename S = int>
virtual RBNode * BF::RBTree< T, S >::RBNode::right ( )
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ right() [2/2]

template<typename T , typename S = int>
virtual const RBNode * BF::RBTree< T, S >::RBNode::right ( ) const
inlinevirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

◆ setColor()

template<typename T , typename S = int>
void BF::RBTree< T, S >::RBNode::setColor ( char color)
inlineprotected
Here is the call graph for this function:

◆ setColorCount()

template<typename T , typename S = int>
void BF::RBTree< T, S >::RBNode::setColorCount ( unsigned char count)
inlineprotected
Here is the call graph for this function:

◆ setLeft()

template<typename T , typename S = int>
virtual void BF::RBTree< T, S >::RBNode::setLeft ( typename BinTree< T, S >::BinNode * left)
inlineprotectedvirtual

Reimplemented in BF::RBTree< T, S >::RBNodeNonnull.

Here is the call graph for this function:

◆ setRight()

template<typename T , typename S = int>
virtual void BF::RBTree< T, S >::RBNode::setRight ( typename BinTree< T, S >::BinNode * right)
inlineprotectedvirtual

Reimplemented in BF::RBTree< T, S >::RBNodeNonnull.

Here is the call graph for this function:

◆ sibling()

template<typename T , typename S = int>
virtual RBNode * BF::RBTree< T, S >::RBNode::sibling ( )
inlineprotectedvirtual

Reimplemented from BF::BinTree< T, S >::BinNode.

Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ RBTree< T, S >

template<typename T , typename S = int>
friend class RBTree< T, S >
friend

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