Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
|
A class for packing a tuple of iterators and synchronizing them. All are incremented, decremented, dereferenced together. More...
#include <foreach.hpp>
Public Member Functions | |
const_tuple_foreach_iterator (Iterators ... it) | |
Constructor of the iterator tuple from a pack of iterators. More... | |
template<size_t I> | |
decltype(std::get< I >(current)) | base () const |
Getter of an Ith iterator from the tuple of underlying iterators. More... | |
template<size_t ... I> | |
ext::tuple< const typename Iterators::value_type &... > | operator* () const |
Implementation of dereference operator on all iterators in the tuple. More... | |
const_tuple_foreach_iterator & | operator++ () |
Prefix version of increment operator that propagates the call to all underlying iterators. More... | |
const_tuple_foreach_iterator & | operator-- () |
Prefix version of decrement operator that propagates the call to all underlying iterators. More... | |
const_tuple_foreach_iterator | operator++ (int) |
Postfix version of increment operator that propagates the call to all underlying iterators. More... | |
const_tuple_foreach_iterator | operator-- (int) |
Postfix version of decrement operator that propagates the call to all underlying iterators. More... | |
bool | operator== (const const_tuple_foreach_iterator< Iterators ... > &other) const |
Implementation of equality comparison operator on tuple of iterators. More... | |
bool | operator!= (const const_tuple_foreach_iterator< Iterators ... > &other) const |
Implementation of inequality comparison operator on tuple of iterators. More... | |
A class for packing a tuple of iterators and synchronizing them. All are incremented, decremented, dereferenced together.
|
inlineexplicit |
Constructor of the iterator tuple from a pack of iterators.
it | ... pack of iterators |
|
inline |
Getter of an Ith iterator from the tuple of underlying iterators.
I | the specification of the iterator index. |
|
inline |
Implementation of inequality comparison operator on tuple of iterators.
other | the other instance to compare with |
|
inline |
Implementation of dereference operator on all iterators in the tuple.
|
inline |
Prefix version of increment operator that propagates the call to all underlying iterators.
|
inline |
Postfix version of increment operator that propagates the call to all underlying iterators.
|
inline |
Prefix version of decrement operator that propagates the call to all underlying iterators.
|
inline |
Postfix version of decrement operator that propagates the call to all underlying iterators.
|
inline |
Implementation of equality comparison operator on tuple of iterators.
other | the other instance to compare with |