Lumiera  0.pre.03
»edit your freedom«
IterTool< CORE > Class Template Reference

#include "lib/itertools.hpp"

Description

template<class CORE>
class lib::IterTool< CORE >

Standard functionality to build up any iterator tool.

IterTool exposes the frontend functions necessary to comply to the Lumiera Forward Iterator concept. The protected part provides the iteration control building blocks to drive the processing/filter logic, which is implemented in the specific core for each tool.

Definition at line 155 of file itertools.hpp.

Public Types

typedef CORE::pointer pointer
 
typedef CORE::reference reference
 
typedef CORE::value_type value_type
 

Public Member Functions

 IterTool (CORE &&setup)
 
bool empty () const
 
bool isValid () const
 
 operator bool () const
 
reference operator* () const
 
IterTooloperator++ ()
 
pointer operator-> () const
 

Protected Member Functions

void _maybe_throw () const
 
bool hasData () const
 
bool iterate ()
 

Protected Attributes

CORE core_
 
+ Inheritance diagram for IterTool< CORE >:
+ Collaboration diagram for IterTool< CORE >:

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