Logo Search packages:      
Sourcecode: cadabra version File versions

tree< T, tree_node_allocator >::pre_order_iterator Class Reference

#include <tree.hh>

Inheritance diagram for tree< T, tree_node_allocator >::pre_order_iterator:

tree< T, tree_node_allocator >::iterator_base tree< T, tree_node_allocator >::iterator_base

List of all members.


Detailed Description

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

Depth-first iterator, first accessing the node, then its children.

Definition at line 166 of file tree.hh.


Public Types

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 Member Functions

sibling_iterator begin () const
sibling_iterator begin () const
sibling_iterator end () const
sibling_iterator end () const
unsigned int number_of_children () const
unsigned int number_of_children () const
 Number of children of the node pointed to by the iterator.
bool operator!= (const pre_order_iterator &other) const
bool operator!= (const pre_order_iterator &) const
T & operator* () const
T & operator* () const
virtual iterator_baseoperator++ ()
pre_order_iterator operator++ (int)
pre_order_iteratoroperator++ ()
virtual iterator_baseoperator+= (unsigned int num)
pre_order_iteratoroperator+= (unsigned int)
virtual iterator_baseoperator-- ()
pre_order_iterator operator-- (int)
pre_order_iteratoroperator-- ()
virtual iterator_baseoperator-= (unsigned int num)
pre_order_iteratoroperator-= (unsigned int)
T * operator-> () const
T * operator-> () const
bool operator== (const pre_order_iterator &other) const
bool operator== (const pre_order_iterator &) const
 pre_order_iterator (const sibling_iterator &other)
 pre_order_iterator (const iterator_base &other)
 pre_order_iterator (tree_node *tn)
 pre_order_iterator (const sibling_iterator &)
 pre_order_iterator (const iterator_base &)
 pre_order_iterator (tree_node *)
void skip_children ()
void skip_children (bool skip)
void skip_children ()
 When called, the next increment/decrement skips children of this node.

Public Attributes

tree_nodenode

Protected Attributes

bool skip_current_children_

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

Generated by  Doxygen 1.6.0   Back to index