#include <foreach.h>
ConcatForEachIterator implements the foreach-protocol such that it iterates completely over a first foreach iterator and afterwards completely over a second foreach iterator.
T | The type of values to iterate over. |
I1 | The type of the first iterator. |
I2 | The type of the second iterator. |
Public Types | |
using | First = I1 |
using | Second = I2 |
using | Types = CommonIteratorTypes< T, I1, I2 > |
using | ValueType = typename Types::ValueType |
Public Types inherited from ForEachIterator< ConcatForEachIterator< T, I1, I2 > > | |
using | IsForEachIterator = std::true_type |
Public Member Functions | |
ConcatForEachIterator (I1 &&it1, I2 &&it2) | |
ConcatForEachIterator (const I1 &it1, I2 &&it2) | |
ConcatForEachIterator (I1 &&it1, const I2 &it2) | |
ConcatForEachIterator (const I1 &it1, const I2 &it2) | |
MAXON_ATTRIBUTE_FORCE_INLINE | ConcatForEachIterator (ConcatForEachIterator &&src) |
ConcatForEachIterator (const ConcatForEachIterator &src)=default | |
MAXON_ATTRIBUTE_FORCE_INLINE | operator Bool () const |
MAXON_ATTRIBUTE_FORCE_INLINE void | operator++ () |
MAXON_ATTRIBUTE_FORCE_INLINE ValueType | operator* () const |
MAXON_ATTRIBUTE_FORCE_INLINE Types::ValueTypeNoRef * | operator-> () const |
Public Member Functions inherited from ForEachIterator< ConcatForEachIterator< T, I1, I2 > > | |
MAXON_ATTRIBUTE_FORCE_INLINE | ForEachIterator (ARGS &&... args) |
String | ToString (const FormatStatement *formatStatement=nullptr) |
ConcatForEachIterator< T, I1, I2 > & | Find (const T &v) |
Int | FindIndex (const T &v) |
MAXON_ATTRIBUTE_FORCE_INLINE Bool | Contains (const T &v) |
MAXON_ATTRIBUTE_FORCE_INLINE Wrapper | begin () |
Private Attributes | |
I1 | _first |
I2 | _second |
Additional Inherited Members | |
Static Public Member Functions inherited from ForEachIterator< ConcatForEachIterator< T, I1, I2 > > | |
static MAXON_ATTRIBUTE_FORCE_INLINE | PRIVATE_MAXON_RBF_SENTINEL (Wrapper) end() |
using First = I1 |
using Second = I2 |
using Types = CommonIteratorTypes<T, I1, I2> |
using ValueType = typename Types::ValueType |
ConcatForEachIterator | ( | I1 && | it1, |
I2 && | it2 | ||
) |
ConcatForEachIterator | ( | const I1 & | it1, |
I2 && | it2 | ||
) |
ConcatForEachIterator | ( | I1 && | it1, |
const I2 & | it2 | ||
) |
ConcatForEachIterator | ( | const I1 & | it1, |
const I2 & | it2 | ||
) |
MAXON_ATTRIBUTE_FORCE_INLINE ConcatForEachIterator | ( | ConcatForEachIterator< T, I1, I2 > && | src | ) |
|
default |
|
explicit |
MAXON_ATTRIBUTE_FORCE_INLINE void operator++ | ( | ) |
MAXON_ATTRIBUTE_FORCE_INLINE ValueType operator* | ( | ) | const |
MAXON_ATTRIBUTE_FORCE_INLINE Types::ValueTypeNoRef* operator-> | ( | void | ) | const |
|
private |
|
private |