![]() |
Zen C++ Libraries
Zero-dependency re-usable components for C++
|
An iterator that merges multiple other iterators. More...
#include <zip_iterator.hpp>
Public Types | |
| using | value_type |
| using | reference = value_type |
| using | pointer = value_type* |
| using | difference_type = std::ptrdiff_t |
| using | iterator_category |
Public Member Functions | |
| zip_iterator (T iterators) | |
| zip_iterator (const zip_iterator &other) | |
| zip_iterator (zip_iterator &&other) | |
| zip_iterator & | operator= (zip_iterator &&other) |
| zip_iterator | copy () |
| bool | operator== (const zip_iterator &other) const |
| bool | operator!= (const zip_iterator &other) const |
| zip_iterator & | operator++ () |
| zip_iterator | operator++ (int) |
| void | operator-- () |
| zip_iterator | operator+ (std::ptrdiff_t offset) |
| zip_iterator | operator- (std::ptrdiff_t offset) |
| zip_iterator & | operator= (const zip_iterator &other) |
| reference | operator* () |
An iterator that merges multiple other iterators.
| using zip_iterator< T >::iterator_category |
| using zip_iterator< T >::reference = value_type |
Because we always return a freshly constructed tuple (an rvalue), we cannot return a reference to something that has no definitive memory location. Therefore, a reference is always equal to a plain old value.
| using zip_iterator< T >::value_type |