KJB
|
#include <l_iterator.h>
Public Types | |
typedef std::iterator_traits < iterator >::value_type | value_type |
Public Member Functions | |
circular_iterator () | |
circular_iterator (iterator b, iterator e) | |
circular_iterator (const circular_iterator &other) | |
circular_iterator (Self &other) | |
template<class Container_ > | |
circular_iterator (Container_ &c) | |
Self & | operator= (const Self &other) |
const iterator & | get_iterator () const |
void | swap (Self &other) |
Self & | operator-- () |
Self | operator-- (int) |
Self & | operator++ () |
Self | operator++ (int) |
value_type & | operator* () const |
value_type * | operator-> () const |
bool | operator== (const Self &rhs) const |
bool | operator== (const iterator &rhs) const |
bool | operator!= (const Self &rhs) const |
bool | operator!= (const iterator &rhs) const |
void | reset () |
Protected Attributes | |
iterator | begin |
iterator | end |
iterator | iter |
An very simple iterator that continues at the beginning when it reaches the end. This is useful when you need to cycle through elements of a collection by avoiding messy modulo operations when stepping backward.
typedef std::iterator_traits<iterator>::value_type kjb::circular_iterator< iterator >::value_type |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |