std::ranges::join_with_view<V,Pattern>:: iterator <Const>:: iterator
|
/*iterator*/
(
)
=
default
;
|
(1) | (C++23以降) |
|
constexpr
/*iterator*/
(
/*iterator*/
<
!
Const
>
i
)
requires Const
&&
|
(2) | (C++23以降) |
|
constexpr
/*iterator*/
(
/*Parent*/
&
parent,
/*OuterIter*/
outer
)
requires std:: forward_range < /*Base*/ > ; |
(3) |
(C++23以降)
( 説明専用* ) |
|
constexpr
explicit
/*iterator*/
(
/*Parent*/
parent
)
requires ( ! std:: forward_range < /*Base*/ > ) ; |
(4) |
(C++23以降)
( 説明専用* ) |
イテレータを構築します。オーバーロード (3,4) は、 begin() および end() によって ranges::join_with_view から呼び出されます。
| オーバーロード | データメンバ | ||
|---|---|---|---|
parent_
|
outer_it_
|
inner_it_
|
|
| (1) | nullptr で初期化 |
値初期化
(
Base
が
forward_range
をモデル化する場合のみ)
|
デフォルト初期化 |
| (2) |
i.
parent_
で初期化
|
std
::
move
(
i.
outer_it_
で初期化
(
Base
が
forward_range
をモデル化する場合のみ)
|
|
| (3) | std:: addressof ( parent ) で初期化 | std :: move ( outer ) で初期化 | |
| (4) | 該当なし | ||
if
(
i.
inner_it_
.
index
(
)
==
0
)
inner_it_
.
template
emplace
<
0
>
(
std
::
get
<
0
>
(
std
::
move
(
i.
inner_it_
)
)
)
;
else
inner_it_
.
template
emplace
<
1
>
(
std
::
get
<
1
>
(
std
::
move
(
i.
inner_it_
)
)
)
;
パラメータ
| i | - | 変更可能なイテレータ |
| parent | - | std::ranges::join_with_view オブジェクト |
| outer | - | parent の基盤となる範囲へのイテレータ |
例
|
このセクションは不完全です
理由: 例がありません |