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

#include "lib/iter-explorer.hpp"

Description

template<class SRC, class FUN>
class lib::iter_explorer::DefaultCombinator< SRC, FUN >

a generic "Combinator strategy" for IterExplorer.

This default / fallback solution doesn't assume anything beyond the source and the intermediary result(s) to be Lumiera Forward Iterators.

Note
the implementation stores the functor into a std::function object, which might cause heap allocations, depending on the function given. Besides, the implementation holds one instance of the (intermediary) result iterator (yielded by invoking the function) and a copy of the original IterExplorer source sequence, to get the further elements when the initial results are exhausted.

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

Public Member Functions

 DefaultCombinator ()
 
 DefaultCombinator (FUN explorerFunction, SRC const &sourceElements)
 
- Public Member Functions inherited from CombinedIteratorEvaluation< SRC, FUN >
 CombinedIteratorEvaluation ()
 
 CombinedIteratorEvaluation (FUN explorerFunction)
 
bool checkPoint () const
 
void iterNext ()
 
void setSourceSequence (SRC const &followUpSourceElements)
 
reference yield () const
 

Private Types

typedef _Fun< FUN >::Ret ResultIter
 

Additional Inherited Members

- Public Types inherited from CombinedIteratorEvaluation< SRC, FUN >
typedef ResultIter::pointer pointer
 
typedef ResultIter::reference reference
 
typedef ResultIter::value_type value_type
 

Member Typedef Documentation

typedef _Fun<FUN>::Ret ResultIter
private

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

Constructor & Destructor Documentation

DefaultCombinator ( )
inline

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

DefaultCombinator ( FUN  explorerFunction,
SRC const &  sourceElements 
)
inline

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

References CombinedIteratorEvaluation< SRC, FUN >::setSourceSequence().

+ Here is the call graph for this function:

+ Inheritance diagram for DefaultCombinator< SRC, FUN >:
+ Collaboration diagram for DefaultCombinator< SRC, FUN >:

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