iter_move(ranges::concat_view::iterator)
From cppreference.com
< cpp | ranges | concat view | iterator
| friend constexpr decltype(auto) iter_move( const /*iterator*/& it ) noexcept(/* see description */); |
(C++26以降) | |
it_に格納されている基底イテレータにranges::iter_moveを適用した結果を返します。
Refをmaybe-const <Const, Views>...>に対するconcat-rvalue-reference-t とします。 return std::visit([](const auto& i) -> Ref { return ranges::iter_move(i); }, it.it_ );と同等です。
it.it_.valueless_by_exception()がtrueの場合、動作は未定義です。
この関数は、通常の非修飾または修飾ルックアップからは見えず、concat_view::iterator <Const>が引数に関連付けられたクラスである場合にのみ、引数依存名前探索によって見つけることができます。
[編集] パラメータ
| it | - | iterator |
[編集] 戻り値
基底イテレータにranges::iter_moveを適用した結果。
[編集] 例外
noexcept 指定:
noexcept(
((std::is_nothrow_invocable_v
<decltype(ranges::iter_move),
const ranges::iterator_t</*maybe-const*/<Const, Views>>&> &&
std::is_nothrow_convertible_v<ranges::range_rvalue_reference_t
</*maybe-const*/<Const, Views>>, Ref>) && ...)