LIBINT
2.1.0-stable
|
Iterator provides a base class for all object iterator classes. More...
#include <iter.h>
Public Member Functions | |
virtual unsigned int | num_iter () const =0 |
Returns a number of iterations (number of elements in a set over which to iterate). | |
virtual void | init ()=0 |
Initializes the iterator. | |
virtual SubIterator & | operator++ ()=0 |
Iterates to the next element. Only prefix form is provided. | |
virtual | operator int () const =0 |
This is used to check whether next element exists. Returns 1 if it does. | |
virtual const ConstructablePolymorphically & | pelem () const |
Return current element via base class. More... | |
Iterator provides a base class for all object iterator classes.
It iterates over certain objects as if they were sets of some other data. For example, Iterator can be implemented for iterating over Gaussian functions within shells, or over integrals within shell sets of integrals.
|
virtual |
Return current element via base class.
These functions can only be be implemented if elements are derived from ConstructablePolymorphically. Default implementation throws, thus must be overridden by SubIteratorBase<T>.
Reimplemented in libint2::SubIteratorBase< T, Tr >.