LIBINT
2.1.0-stable
|
SubIteratorBase<T> provides a base class for a sub-iterator class for T. More...
#include <iter.h>
Public Types | |
typedef T::iter_type | iter_type |
typedef Tr< T > | TPolicy |
typedef TPolicy::obj_stype | tref |
typedef TPolicy::subobj_stype | iref |
typedef const ConstructablePolymorphically & | cp_rettype |
Return reference to ConstructablePolymorphically as object of this type. | |
Public Member Functions | |
SubIteratorBase (const tref &) | |
const iref & | elem () const |
Returns current element. | |
cp_rettype | pelem () const |
Returns current element. Implements SubIterator's pelem(). | |
unsigned int | num_iter () const |
Returns a number of iterations (number of elements in a set over which to iterate). | |
void | init () |
Initializes the iterator. | |
SubIterator & | operator++ () |
Iterates to the next element. Only prefix form is provided. | |
operator int () const | |
This is used to check whether current element exists. Returns 1 if it does. | |
Protected Attributes | |
const tref | obj_ |
vector< iref > | subobj_ |
SubIteratorBase<T> provides a base class for a sub-iterator class for T.
It iterates through T as if it were a set of some data of type T::iter_type. Traits of class T (ordering of T::iter_type, etc.) are provided by Tr<T>.