Lumiera  0.pre.03
»edit your freedom«
CursorGear< IT > Class Template Reference

#include "lib/iter-cursor.hpp"

Description

template<class IT>
class lib::iter::CursorGear< IT >

implementation for a "gear switching" iterator, based on STL container iterators.

Definition at line 58 of file iter-cursor.hpp.

Public Types

using pointer = typename meta::ValueTypeBinding< IT >::pointer
 
using reference = typename meta::ValueTypeBinding< IT >::reference
 
using value_type = typename std::remove_reference< reference >::type
 

Public Member Functions

 CursorGear (IT &&begin, IT &&end)
 
bool checkPoint () const
 
void iterNext ()
 
void reverse (bool backwards)
 
void reverse ()
 
reference yield () const
 

Friends

bool operator== (CursorGear const &g1, CursorGear const &g2)
 

Private Attributes

bool backwards_ {false}
 
const IT end_
 
IT pos_
 
const IT start_
 

Member Typedef Documentation

◆ value_type

using value_type = typename std::remove_reference<reference>::type
Note
will be const for const iterators (while const_iterator::value_type isn't)

Definition at line 70 of file iter-cursor.hpp.

+ Collaboration diagram for CursorGear< IT >:

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