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 RBNode * left () const
 
virtual const RBNode * right () const
 
- Public Member Functions inherited from BF::BinTree< T, S >::BinNode
T object () const
 
const BinNode * parent () 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 RBNode * left ()
 
virtual RBNode * right ()
 
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 RBNode * clone ()
 
virtual RBNode * grandParent ()
 
virtual RBNode * pibling ()
 
virtual RBNode * sibling ()
 
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
 
T _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: