Lumiera  0.pre.03
»edit your freedom«
NumIter< INT > Class Template Reference

#include "lib/iter-adapter.hpp"

Description

template<typename INT>
class lib::NumIter< INT >

Enumerate all "numbers" within a range.

This allows to build pipelines based on all numbers "for `i` from `1...N`". This range is half open, i.e. the start is inclusive and the end point is exclusive.

Remarks
basically this is boost::irange without any boost #include
Template Parameters
INTa number like type, which can be incremented and compared.

Definition at line 832 of file iter-adapter.hpp.

Public Types

typedef const INT * pointer
 
typedef const INT & reference
 
typedef INT value_type
 

Public Member Functions

 NumIter (INT start, INT end)
 
template<typename X >
 NumIter (X &&start, X &&end)
 
bool empty () const
 
 ENABLE_USE_IN_STD_RANGE_FOR_LOOPS (NumIter)
 
const INT & getEnd () const
 
const INT & getPos () const
 access wrapped index elements
 
bool isValid () const
 
 operator bool () const
 
reference operator* () const
 
NumIteroperator++ ()
 
pointer operator-> () const
 

Private Member Functions

void _maybe_throw () const
 

Private Attributes

INT e_
 
INT i_
 
+ Collaboration diagram for NumIter< INT >:

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