Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members  

mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator > Class Template Reference

Right sibling iterator for trees. More...

#include <general_tree.hh>

List of all members.

Public Types

typedef std::iterator< std::forward_iterator_tag,
TItem >::difference_type 
difference_type
 Imports difference type.

typedef std::iterator< std::forward_iterator_tag,
TItem >::iterator_category 
iterator_category
 Imports category tag type.

typedef std::iterator< std::forward_iterator_tag,
TItem >::pointer 
pointer
 Imports pointer type.

typedef std::iterator< std::forward_iterator_tag,
TItem >::reference 
reference
 Imports reference type.

typedef std::iterator< std::forward_iterator_tag,
TItem >::value_type 
value_type
 Imports value type.


Public Methods

 TGeneralTreeSideIterator (void)
 Builds a new instance pointing to 'past the end'.

 TGeneralTreeSideIterator (const TTreeNode< TItem, TAllocator > *pktNODE)
 TGeneralTreeSideIterator (const TGeneralTreePreIterator< TItem, TAllocator > &rktPRE_ITERATOR)
TGeneralTreeSideIterator & operator++ (void) throw (TConstraintException)
TGeneralTreeSideIterator operator++ (int)
TGeneralTreeSideIterator & operator= (const TGeneralTreeSideIterator< TItem, TAllocator > &rktSIDE_ITERATOR)
TGeneralTreeSideIterator & operator= (const TGeneralTreePreIterator< TItem, TAllocator > &rktPRE_ITERATOR)
TGeneralTreeSideIterator leftChild (void) const
bool operator== (const TGeneralTreePreIterator< TItem, TAllocator > &rktPRE_ITERATOR) const
bool operator!= (const TGeneralTreePreIterator< TItem, TAllocator > &rktPRE_ITERATOR) const
TGeneralTreeSideIterator rightSibling (void) const

Friends

class TGeneralTree
 Friend class.

class TGeneralTreePreIterator
 Friend class.


Detailed Description

template<typename TItem, template< typename TItemA > class TAllocator>
class mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >

Right sibling iterator for trees.

Definition at line 491 of file general_tree.hh.


Constructor & Destructor Documentation

template<typename TItem, template< typename TItemA > class TAllocator>
mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::TGeneralTreeSideIterator const TTreeNode< TItem, TAllocator > *    pktNODE [inline]
 

Builds a new instance pointing to pktNODE.

Parameters:
pktNODE  Node to point to.

Definition at line 555 of file general_tree.hh.

template<typename TItem, template< typename TItemA > class TAllocator>
mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::TGeneralTreeSideIterator const TGeneralTreePreIterator< TItem, TAllocator > &    rktPRE_ITERATOR [inline]
 

Builds a new instance pointing to the same location that the iterator rktPRE_ITERATOR points to.

Parameters:
rktPRE_ITERATOR  Source pre-order iterator.

Definition at line 564 of file general_tree.hh.


Member Function Documentation

template<typename TItem, template< typename TItemA > class TAllocator>
TGeneralTreeSideIterator mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::leftChild void    const [inline]
 

Returns a tree side-iterator pointing to the left child node.

Returns:
A tree side-iterator pointing to the left child node.
Precondition:
( !empty() )

Definition at line 625 of file general_tree.hh.

References mpcl::util::collection::TTreeNode< TItem, TAllocator >::qtFirstChildNode, and mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::TGeneralTreeSideIterator().

template<typename TItem, template< typename TItemA > class TAllocator>
bool mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator!= const TGeneralTreePreIterator< TItem, TAllocator > &    rktPRE_ITERATOR const [inline]
 

Tests if iterator rktPRE_ITERATOR does not point to the same position that this instance.

Parameters:
rktPRE_ITERATOR  Source pre-order iterator.
Returns:
True if equal.

Definition at line 666 of file general_tree.hh.

References mpcl::util::collection::TGeneralTreePreIterator< TItem, TAllocator >::ptCurrentNode.

template<typename TItem, template< typename TItemA > class TAllocator>
TGeneralTreeSideIterator mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator++ int    [inline]
 

Post-increments the iterator position to the next position. The position follows a right sibling node iteration.

Returns:
old (*this)

Definition at line 582 of file general_tree.hh.

References mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator++().

template<typename TItem, template< typename TItemA > class TAllocator>
TGeneralTreeSideIterator< TItem, TAllocator > & mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator++ void    throw (TConstraintException) [inline]
 

Post-increments the iterator position to the next position. That position follows a right sibling node iteration.

Returns:
This instance.
Exceptions:
TConstraintException  If iterator is past the end.

Definition at line 1531 of file general_tree.hh.

Referenced by mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator++().

template<typename TItem, template< typename TItemA > class TAllocator>
TGeneralTreeSideIterator& mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator= const TGeneralTreePreIterator< TItem, TAllocator > &    rktPRE_ITERATOR [inline]
 

Copies the position pointed by rktPRE_ITERATOR.

Parameters:
rktPRE_ITERATOR  Source pre-order iterator.
Returns:
This instance.

Definition at line 607 of file general_tree.hh.

References mpcl::util::collection::TGeneralTreePreIterator< TItem, TAllocator >::ptCurrentNode.

template<typename TItem, template< typename TItemA > class TAllocator>
TGeneralTreeSideIterator& mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator= const TGeneralTreeSideIterator< TItem, TAllocator > &    rktSIDE_ITERATOR [inline]
 

Copies the position pointed by rktSIDE_ITERATOR.

Parameters:
rktSIDE_ITERATOR  Source right sibling iterator.
Returns:
This instance.

Definition at line 596 of file general_tree.hh.

References mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::ptCurrentNode.

template<typename TItem, template< typename TItemA > class TAllocator>
bool mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::operator== const TGeneralTreePreIterator< TItem, TAllocator > &    rktPRE_ITERATOR const [inline]
 

Tests if iterator rktPRE_ITERATOR points to the same position that this instance.

Parameters:
rktPRE_ITERATOR  Source pre-order iterator.
Returns:
True if equal.

Definition at line 655 of file general_tree.hh.

References mpcl::util::collection::TGeneralTreePreIterator< TItem, TAllocator >::ptCurrentNode.

template<typename TItem, template< typename TItemA > class TAllocator>
TGeneralTreeSideIterator mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::rightSibling void    const [inline]
 

Returns a tree side iterator pointing to the right sibling node.

Returns:
A tree side iterator pointing to the right sibling node.
Precondition:
( !empty() )

Definition at line 686 of file general_tree.hh.

References mpcl::util::collection::TTreeNode< TItem, TAllocator >::qtRightNode, and mpcl::util::collection::TGeneralTreeSideIterator< TItem, TAllocator >::TGeneralTreeSideIterator().


The documentation for this class was generated from the following file:
Generated on Mon Oct 13 02:35:27 2003 for MPCL by doxygen1.2.18