std::ranges::join_with_view<V,Pattern>::iterator<Const>::operator++,--
constexpr
/*iterator*/
& operator++
(
)
;
|
(1) | (since C++23) |
constexpr
void operator++
(
int
)
;
|
(2) | (since C++23) |
constexpr
/*iterator*/ operator++
(
int
)
requires std::is_reference_v
<
/*InnerBase*/
>
&&
|
(3) | (since C++23) |
constexpr
/*iterator*/
& operator--
(
)
requires std::is_reference_v
<
/*InnerBase*/
>
&&
|
(4) | (since C++23) |
constexpr
/*iterator*/ operator--
(
int
)
requires std::is_reference_v
<
/*InnerBase*/
>
&&
|
(5) | (since C++23) |
Increments or decrements the iterator.
- If the incremented inner iterator is the past-the-end iterator of the pattern range, it is set to an iterator to the beginning of the next inner range.
- If the incremented inner iterator is the past-the-end iterator of an inner range, the outer iterator is incremented. Then:
-
- If the incremented outer iterator is not the past-the-end iterator of the outer range, the inner iterator is set to an iterator to the beginning of the pattern range.
- Otherwise, if
std::is_reference_v<
InnerBase
> is true, the inner iterator is set to a pattern iterator holding a singular value
- Repeats the operations above until either the inner iterator is not a past-the-end iterator, or the outer iterator is a past-the-end iterator.
++*this;
return tmp;
- If the inner iterator refers to the beginning of an inner range, it is set to the past-the-end iterator of the pattern range.
- If the inner iterator refers to the beginning of the pattern range, the outer iterator is decremented, and the inner iterator is set to the past-the-end iterator of the previous inner range.
- Repeats the operations above until the inner iterator does not refer to the beginning of any range.
inner_it_
);
--*this;
return tmp;