Lumiera  0.pre.03
»edityourfreedom«
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
CombinedIteratorEvaluation< SRC, FUN, _EXP_ > Class Template Reference

#include "lib/iter-explorer.hpp"

Description

template<class SRC, class FUN, template< class > class _EXP_ = ExploreByFunction>
class lib::iter_explorer::CombinedIteratorEvaluation< SRC, FUN, _EXP_ >

Building block: evaluate and combine a sequence of iterators.

This implementation helper provides two kinds of "buffers" (actually implemented as iterators): A result buffer (iterator) which holds a sequence of already prepared result elements, which can be retrieved through iteration right away. And a supply buffer (iterator) holding raw source elements. When the result buffer is exhausted, the next source element will be pulled from there and fed through the "evaluation strategy", which typically is a function processing the source element and producing a new result buffer (iterator).

Definition at line 320 of file iter-explorer.hpp.

Public Types

typedef ResultIter::pointer pointer
 
typedef ResultIter::reference reference
 
typedef ResultIter::value_type value_type
 

Public Member Functions

 CombinedIteratorEvaluation ()
 
 CombinedIteratorEvaluation (FUN explorerFunction)
 
bool checkPoint () const
 
void iterNext ()
 
void setSourceSequence (SRC const &followUpSourceElements)
 
reference yield () const
 

Private Types

typedef _EXP_< ResultIter(SrcElement)> Explorer
 
typedef _Fun< FUN >::Ret ResultIter
 
typedef SRC::value_type SrcElement
 

Private Member Functions

bool findNextResultElement ()
 

Private Attributes

Explorer explorer_
 
ResultIter results_
 
SRC srcSeq_
 

Member Typedef Documentation

typedef _Fun<FUN>::Ret ResultIter
private

Definition at line 322 of file iter-explorer.hpp.

typedef SRC::value_type SrcElement
private

Definition at line 323 of file iter-explorer.hpp.

typedef _EXP_<ResultIter(SrcElement)> Explorer
private

Definition at line 324 of file iter-explorer.hpp.

typedef ResultIter::value_type value_type

Definition at line 332 of file iter-explorer.hpp.

typedef ResultIter::reference reference

Definition at line 333 of file iter-explorer.hpp.

typedef ResultIter::pointer pointer

Definition at line 334 of file iter-explorer.hpp.

Constructor & Destructor Documentation

Definition at line 337 of file iter-explorer.hpp.

CombinedIteratorEvaluation ( FUN  explorerFunction)
inline

Definition at line 339 of file iter-explorer.hpp.

Member Function Documentation

void setSourceSequence ( SRC const &  followUpSourceElements)
inline

Definition at line 349 of file iter-explorer.hpp.

bool findNextResultElement ( )
inlineprivate

Definition at line 357 of file iter-explorer.hpp.

bool checkPoint ( ) const
inline

Definition at line 370 of file iter-explorer.hpp.

reference yield ( ) const
inline

Definition at line 376 of file iter-explorer.hpp.

void iterNext ( )
inline

Definition at line 382 of file iter-explorer.hpp.

Member Data Documentation

+ Inheritance diagram for CombinedIteratorEvaluation< SRC, FUN, _EXP_ >:
+ Collaboration diagram for CombinedIteratorEvaluation< SRC, FUN, _EXP_ >:

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