30 #ifndef DOXYGEN_SHOULD_SKIP_THIS    50     struct Iterator : 
public std::iterator<std::input_iterator_tag, T> {
    59       : index(iteratorIndex)
   101         return index != other.index;
   111         return index == other.index;
   123       return lo <= value && value < hi;
   232     struct Iterator : 
public std::iterator<std::input_iterator_tag, T> {
   243       : range(iteratorRange)
   244       , position(iteratorPosition)
   286         return position.
x != other.position.x || position.
y != other.position.y;
   296         return position.
x == other.position.x && position.
y == other.position.y;
   303         if (position.
x >= range.
hi) {
   304           position.
x = range.
lo;
   333 #ifndef DOXYGEN_SHOULD_SKIP_THIS T x
First coordinate in the (x,y) representation. 
Definition: Vector.h:509
 
A range iterator. 
Definition: Range.h:50
 
constexpr bool operator==(const Iterator &other) const noexcept
Equality operator. 
Definition: Range.h:295
 
constexpr Iterator(T iteratorIndex) noexcept
Constructor. 
Definition: Range.h:58
 
A half-open range of values. 
Definition: Range.h:42
 
constexpr bool operator!=(const Iterator &other) const noexcept
Inequality operator. 
Definition: Range.h:100
 
T operator*() noexcept
Dereference operator. 
Definition: Range.h:69
 
Range< T > first
The range in the first dimension. 
Definition: Range.h:226
 
Iterator & operator++() noexcept
Increment operator (prefix) 
Definition: Range.h:263
 
constexpr bool isEmpty() const noexcept
Check if the range is empty. 
Definition: Range.h:161
 
T lo
The lower endpoint (included) 
Definition: Range.h:43
 
constexpr Iterator end() const noexcept
Get a end iterator. 
Definition: Range.h:326
 
Iterator operator++(int) noexcept
Increment operator (postfix) 
Definition: Range.h:88
 
constexpr bool operator==(const Iterator &other) const noexcept
Equality operator. 
Definition: Range.h:110
 
constexpr Iterator end() const noexcept
Get a end iterator. 
Definition: Range.h:142
 
constexpr bool operator!=(const Iterator &other) const noexcept
Inequality operator. 
Definition: Range.h:285
 
Iterator operator++(int) noexcept
Increment operator (postfix) 
Definition: Range.h:273
 
T y
Second coordinate in the (x,y) representation. 
Definition: Vector.h:520
 
Range< T > second
The range in the second dimension. 
Definition: Range.h:227
 
T hi
The higher endpoint (excluded) 
Definition: Range.h:44
 
An iterator for a 2D range. 
Definition: Range.h:232
 
constexpr bool contains(T value) const noexcept
Check if a value is in a range. 
Definition: Range.h:122
 
constexpr Iterator begin() const noexcept
Get a begin iterator. 
Definition: Range.h:132
 
The namespace for gf classes. 
Definition: Action.h:35
 
Range< T > range
Definition: Range.h:233
 
A 2D vector. 
Definition: Vector.h:316
 
constexpr Iterator begin() const noexcept
Get a begin iterator. 
Definition: Range.h:316
 
A 2D range. 
Definition: Range.h:225
 
constexpr Iterator(Range< T > iteratorRange, Vector< T, 2 > iteratorPosition) noexcept
Constructor. 
Definition: Range.h:242
 
Vector< T, 2 > position
Definition: Range.h:234
 
T index
The index in the range. 
Definition: Range.h:51
 
Vector< T, 2 > operator*() noexcept
Dereference operator. 
Definition: Range.h:254
 
constexpr T length() const noexcept
Get the length of the range. 
Definition: Range.h:151
 
Iterator & operator++() noexcept
Increment operator (prefix) 
Definition: Range.h:78
 
constexpr bool isValid() const noexcept
Check is the range is valid. 
Definition: Range.h:171