|
LIBINT 2.7.2
|
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 override |
| Returns current element. Implements SubIterator's pelem(). More... | |
| unsigned int | num_iter () const override |
| Returns a number of iterations (number of elements in a set over which to iterate). More... | |
| void | init () override |
| Initializes the iterator. More... | |
| SubIterator & | operator++ () override |
| Iterates to the next element. Only prefix form is provided. More... | |
| operator int () const override | |
| This is used to check whether current element exists. Returns 1 if it does. More... | |
| virtual unsigned int | num_iter () const =0 |
| Returns a number of iterations (number of elements in a set over which to iterate). More... | |
| virtual void | init ()=0 |
| Initializes the iterator. More... | |
| virtual SubIterator & | operator++ ()=0 |
| Iterates to the next element. Only prefix form is provided. More... | |
| virtual | operator int () const =0 |
| This is used to check whether next element exists. Returns 1 if it does. More... | |
| virtual const ConstructablePolymorphically & | pelem () const |
| Return current element via base class. More... | |
Protected Attributes | |
| const tref | obj_ |
| std::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>.
|
overridevirtual |
Initializes the iterator.
Implements libint2::SubIterator.
|
overridevirtual |
Returns a number of iterations (number of elements in a set over which to iterate).
Implements libint2::SubIterator.
|
overridevirtual |
This is used to check whether current element exists. Returns 1 if it does.
Implements libint2::SubIterator.
|
overridevirtual |
Iterates to the next element. Only prefix form is provided.
Implements libint2::SubIterator.
|
overridevirtual |
Returns current element. Implements SubIterator's pelem().
Reimplemented from libint2::SubIterator.