MADARA  3.1.8
madara::expression::ExpressionTreeConstIterator Class Reference

Constant iterator over an expression tree. More...

#include <Iterator.h>

Collaboration diagram for madara::expression::ExpressionTreeConstIterator:

Public Types

typedef int difference_type
 
typedef std::forward_iterator_tag iterator_category
 
typedef int * pointer
 
typedef int & reference
 
typedef long value_type
 

Public Member Functions

 ExpressionTreeConstIterator (const ExpressionTreeConstIterator &ts)
 Copy ctor - needed for reference counting. More...
 
 ExpressionTreeConstIterator (ExpressionTreeIteratorImpl *impl)
 Copy ctor for impl *. More...
 
bool operator!= (const ExpressionTreeConstIterator &rhs)
 Nonequality operator. More...
 
const ExpressionTree operator* (void) const
 Returns a const reference to the item contained at the current position. More...
 
ExpressionTreeConstIteratoroperator++ (void)
 Preincrement operator. More...
 
ExpressionTreeConstIterator operator++ (int)
 Postincrement operator. More...
 
bool operator== (const ExpressionTreeConstIterator &rhs)
 Equality operator. More...
 

Private Attributes

madara::utility::Refcounter< ExpressionTreeIteratorImplimpl_
 Pointer to actual implementation, i.e., the "bridge", which is reference counted to automate memory management. More...
 

Detailed Description

Constant iterator over an expression tree.

See also
ExpressionTreeLevelOrderIteratorImpl, ExpressionTreeInOrderIteratorImpl, ExpressionTreePreOrderIteratorImpl, and ExpressionTreePostOrderIteratorImpl

Definition at line 76 of file Iterator.h.

Member Typedef Documentation

Definition at line 101 of file Iterator.h.

Constructor & Destructor Documentation

madara::expression::ExpressionTreeConstIterator::ExpressionTreeConstIterator ( const ExpressionTreeConstIterator ts)

Copy ctor - needed for reference counting.

Definition at line 92 of file Iterator.cpp.

madara::expression::ExpressionTreeConstIterator::ExpressionTreeConstIterator ( ExpressionTreeIteratorImpl impl)

Copy ctor for impl *.

Definition at line 100 of file Iterator.cpp.

Member Function Documentation

bool madara::expression::ExpressionTreeConstIterator::operator!= ( const ExpressionTreeConstIterator rhs)

Nonequality operator.

Definition at line 145 of file Iterator.cpp.

const madara::expression::ExpressionTree madara::expression::ExpressionTreeConstIterator::operator* ( void  ) const

Returns a const reference to the item contained at the current position.

Definition at line 109 of file Iterator.cpp.

madara::expression::ExpressionTreeConstIterator & madara::expression::ExpressionTreeConstIterator::operator++ ( void  )

Preincrement operator.

Definition at line 117 of file Iterator.cpp.

madara::expression::ExpressionTreeConstIterator madara::expression::ExpressionTreeConstIterator::operator++ ( int  )

Postincrement operator.

Preincrement operator.

Definition at line 126 of file Iterator.cpp.

bool madara::expression::ExpressionTreeConstIterator::operator== ( const ExpressionTreeConstIterator rhs)

Equality operator.

Definition at line 136 of file Iterator.cpp.

Member Data Documentation

madara::utility::Refcounter<ExpressionTreeIteratorImpl> madara::expression::ExpressionTreeConstIterator::impl_
private

Pointer to actual implementation, i.e., the "bridge", which is reference counted to automate memory management.

Definition at line 110 of file Iterator.h.


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