abstract_range_iterator Class Referenceabstract

#include <indirect_range_iterator.h>

Inheritance diagram for abstract_range_iterator:
chain_range_iterator indirect_range_iterator< T, Storage >

Public Member Functions

virtual ~abstract_range_iterator ()
 
abstract_range_iteratoroperator++ ()
 
void operator() ()
 
 operator bool () const
 
virtual void reset ()=0
 
virtual void advance ()=0
 
virtual bool is_done () const =0
 

Detailed Description

Abstract range iterator

Constructor & Destructor Documentation

virtual ~abstract_range_iterator ( )
inlinevirtual

Destructor

Member Function Documentation

virtual void advance ( )
pure virtual

Advance the iterator to the next element in the range

Implemented in indirect_range_iterator< T, Storage >, and chain_range_iterator.

virtual bool is_done ( ) const
pure virtual

Test if you are at the end of the range

Returns
true if you are done iterating, reached the end of the range

Implemented in indirect_range_iterator< T, Storage >, and chain_range_iterator.

operator bool ( ) const
inline

Test if you can continue to iterate

Returns
true if not done
void operator() ( )
inline

Reset the iterator to the start of the range

abstract_range_iterator& operator++ ( )
inline

Increment the iterator to the next position in the range

Returns
reference to iterator
virtual void reset ( )
pure virtual

Reset the iterator to the start of the range

Implemented in indirect_range_iterator< T, Storage >, and chain_range_iterator.


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