liborigin 2.0.0
Public Member Functions | Public Attributes | Private Member Functions

tree< T, tree_node_allocator >::fixed_depth_iterator Class Reference

Iterator which traverses only the nodes at a given depth from the root. More...

#include <tree.hh>

Inheritance diagram for tree< T, tree_node_allocator >::fixed_depth_iterator:
tree< T, tree_node_allocator >::iterator_base

List of all members.

Public Member Functions

 fixed_depth_iterator ()
 fixed_depth_iterator (tree_node *)
 fixed_depth_iterator (const sibling_iterator &)
 fixed_depth_iterator (const fixed_depth_iterator &)
 fixed_depth_iterator (const iterator_base &)
bool operator!= (const fixed_depth_iterator &) const
fixed_depth_iterator & operator++ ()
fixed_depth_iterator operator++ (int)
fixed_depth_iterator & operator+= (unsigned int)
fixed_depth_iterator operator-- (int)
fixed_depth_iterator & operator-- ()
fixed_depth_iterator & operator-= (unsigned int)
bool operator== (const fixed_depth_iterator &) const

Public Attributes

tree_node * first_parent_

Private Member Functions

void find_leftmost_parent_ ()
void set_first_parent_ ()

Detailed Description

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
class tree< T, tree_node_allocator >::fixed_depth_iterator

Iterator which traverses only the nodes at a given depth from the root.


Constructor & Destructor Documentation

template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator::fixed_depth_iterator ( )
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator::fixed_depth_iterator ( tree_node *  tn)
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator::fixed_depth_iterator ( const iterator_base &  other)
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator::fixed_depth_iterator ( const sibling_iterator &  other)
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator::fixed_depth_iterator ( const fixed_depth_iterator &  other)

Member Function Documentation

template<class T , class tree_node_allocator >
void tree< T, tree_node_allocator >::fixed_depth_iterator::find_leftmost_parent_ ( ) [private]
template<class T , class tree_node_allocator >
bool tree< T, tree_node_allocator >::fixed_depth_iterator::operator!= ( const fixed_depth_iterator &  other) const
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator tree< T, tree_node_allocator >::fixed_depth_iterator::operator++ ( int  )
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator & tree< T, tree_node_allocator >::fixed_depth_iterator::operator++ ( )
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator & tree< T, tree_node_allocator >::fixed_depth_iterator::operator+= ( unsigned int  num)
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator & tree< T, tree_node_allocator >::fixed_depth_iterator::operator-- ( )
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator tree< T, tree_node_allocator >::fixed_depth_iterator::operator-- ( int  )
template<class T , class tree_node_allocator >
tree< T, tree_node_allocator >::fixed_depth_iterator & tree< T, tree_node_allocator >::fixed_depth_iterator::operator-= ( unsigned int  num)
template<class T , class tree_node_allocator >
bool tree< T, tree_node_allocator >::fixed_depth_iterator::operator== ( const fixed_depth_iterator &  other) const
template<class T , class tree_node_allocator >
void tree< T, tree_node_allocator >::fixed_depth_iterator::set_first_parent_ ( ) [private]

Member Data Documentation

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree_node* tree< T, tree_node_allocator >::fixed_depth_iterator::first_parent_

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