std::ranges::join_with_view<V,Pattern>:: iterator <Const>:: operator++,--
|
constexpr
/*iterator*/
&
operator
++
(
)
;
|
(1) | (начиная с C++23) |
|
constexpr
void
operator
++
(
int
)
;
|
(2) | (начиная с C++23) |
|
constexpr
/*iterator*/
operator
++
(
int
)
requires
std::
is_reference_v
<
/*InnerBase*/
>
&&
|
(3) | (начиная с C++23) |
|
constexpr
/*iterator*/
&
operator
--
(
)
requires
std::
is_reference_v
<
/*InnerBase*/
>
&&
|
(4) | (начиная с C++23) |
|
constexpr
/*iterator*/
operator
--
(
int
)
requires
std::
is_reference_v
<
/*InnerBase*/
>
&&
|
(5) | (начиная с C++23) |
Увеличивает или уменьшает итератор.
inner_it_
)
;
.
- Если увеличенный внутренний итератор является конечным итератором диапазона шаблона, он устанавливается в итератор начала следующего внутреннего диапазона.
- Если увеличенный внутренний итератор является конечным итератором внутреннего диапазона, внешний итератор увеличивается. Затем:
-
- Если увеличенный внешний итератор не является конечным итератором внешнего диапазона, внутренний итератор устанавливается в итератор начала диапазона шаблона.
-
В противном случае, если
std::
is_reference_v
<
InnerBase > равно true , внутренний итератор устанавливается в итератор шаблона, содержащий сингулярное значение .
- Повторяет вышеуказанные операции до тех пор, пока внутренний итератор не перестанет быть конечным итератором или внешний итератор не станет конечным итератором.
++* this ;
return tmp ; .
- Если внутренний итератор указывает на начало внутреннего диапазона, он устанавливается в итератор за концом диапазона шаблона.
- Если внутренний итератор указывает на начало диапазона шаблона, внешний итератор декрементируется, а внутренний итератор устанавливается в итератор за концом предыдущего внутреннего диапазона.
- Повторяет вышеуказанные операции до тех пор, пока внутренний итератор не перестанет указывать на начало какого-либо диапазона.
inner_it_
)
;
.
--* this ;
return tmp ; .