Public Member Functions | Private Attributes | List of all members
tree< T, tree_node_allocator >::leaf_iterator Class Reference

Iterator which traverses only the leaves. More...

#include <tree.h>

Inheritance diagram for tree< T, tree_node_allocator >::leaf_iterator:
Inheritance graph
[legend]

Public Member Functions

 leaf_iterator ()
 
 leaf_iterator (tree_node *, tree_node *top=0)
 
 leaf_iterator ()
 
 leaf_iterator (tree_node *, tree_node *top=0)
 
 leaf_iterator (const sibling_iterator &)
 
 leaf_iterator (const iterator_base &)
 
bool operator!= (const leaf_iterator &) const
 
bool operator!= (const leaf_iterator &) const
 
leaf_iteratoroperator++ ()
 
leaf_iterator operator++ (int)
 
leaf_iteratoroperator++ ()
 
leaf_iterator operator++ (int)
 
leaf_iteratoroperator+= (unsigned int)
 
leaf_iteratoroperator+= (unsigned int)
 
leaf_iteratoroperator-- ()
 
leaf_iterator operator-- (int)
 
leaf_iteratoroperator-- ()
 
leaf_iterator operator-- (int)
 
leaf_iteratoroperator-= (unsigned int)
 
leaf_iteratoroperator-= (unsigned int)
 
bool operator== (const leaf_iterator &) const
 
bool operator== (const leaf_iterator &) const
 
- Public Member Functions inherited from tree< T, tree_node_allocator >::iterator_base
sibling_iterator begin () const
 
children_iterator begin_children_iterator () const
 
sibling_iterator end () const
 
children_iterator end_children_iterator () const
 
 iterator_base ()
 
 iterator_base (tree_node *)
 
 iterator_base ()
 
 iterator_base (tree_node *)
 
unsigned int number_of_children () const
 Number of children of the node pointed to by the iterator. More...
 
unsigned int number_of_children () const
 Number of children of the node pointed to by the iterator. More...
 
T & operator* () const
 
T & operator* () const
 
T * operator-> () const
 
T * operator-> () const
 
void skip_children ()
 When called, the next increment/decrement skips children of this node. More...
 
void skip_children (bool skip)
 

Private Attributes

tree_nodetop_node
 

Additional Inherited Members

- Public Types inherited from tree< T, tree_node_allocator >::iterator_base
typedef ptrdiff_t difference_type
 
typedef ptrdiff_t difference_type
 
typedef
std::bidirectional_iterator_tag 
iterator_category
 
typedef
std::bidirectional_iterator_tag 
iterator_category
 
typedef T * pointer
 
typedef T * pointer
 
typedef T & reference
 
typedef T & reference
 
typedef size_t size_type
 
typedef size_t size_type
 
typedef T value_type
 
typedef T value_type
 
- Public Attributes inherited from tree< T, tree_node_allocator >::iterator_base
tree_nodenode
 
- Protected Attributes inherited from tree< T, tree_node_allocator >::iterator_base
bool skip_current_children_
 

Detailed Description

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

Iterator which traverses only the leaves.

Definition at line 233 of file tree.h.

Constructor & Destructor Documentation

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator::leaf_iterator ( )
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator::leaf_iterator ( tree_node ,
tree_node top = 0 
)
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator::leaf_iterator ( const sibling_iterator )
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator::leaf_iterator ( const iterator_base )
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator::leaf_iterator ( )

Definition at line 2757 of file tree.h.

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator::leaf_iterator ( tree_node ,
tree_node top = 0 
)

Member Function Documentation

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
bool tree< T, tree_node_allocator >::leaf_iterator::operator!= ( const leaf_iterator ) const
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
bool tree< T, tree_node_allocator >::leaf_iterator::operator!= ( const leaf_iterator ) const
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator & tree< T, tree_node_allocator >::leaf_iterator::operator++ ( )

Definition at line 2788 of file tree.h.

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator tree< T, tree_node_allocator >::leaf_iterator::operator++ ( int  )

Definition at line 2824 of file tree.h.

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator& tree< T, tree_node_allocator >::leaf_iterator::operator++ ( )
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator tree< T, tree_node_allocator >::leaf_iterator::operator++ ( int  )
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator& tree< T, tree_node_allocator >::leaf_iterator::operator+= ( unsigned  int)
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator& tree< T, tree_node_allocator >::leaf_iterator::operator+= ( unsigned  int)
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator & tree< T, tree_node_allocator >::leaf_iterator::operator-- ( )

Definition at line 2809 of file tree.h.

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree< T, tree_node_allocator >::leaf_iterator tree< T, tree_node_allocator >::leaf_iterator::operator-- ( int  )

Definition at line 2832 of file tree.h.

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator& tree< T, tree_node_allocator >::leaf_iterator::operator-- ( )
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator tree< T, tree_node_allocator >::leaf_iterator::operator-- ( int  )
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator& tree< T, tree_node_allocator >::leaf_iterator::operator-= ( unsigned  int)
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
leaf_iterator& tree< T, tree_node_allocator >::leaf_iterator::operator-= ( unsigned  int)
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
bool tree< T, tree_node_allocator >::leaf_iterator::operator== ( const leaf_iterator ) const
template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
bool tree< T, tree_node_allocator >::leaf_iterator::operator== ( const leaf_iterator ) const

Member Data Documentation

template<class T, class tree_node_allocator = std::allocator<tree_node_<T> >>
tree_node * tree< T, tree_node_allocator >::leaf_iterator::top_node
private

Definition at line 249 of file tree.h.


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


mtt
Author(s): Jorge Almeida
autogenerated on Mon Mar 2 2015 01:32:19