iter_move(ranges::transform_view::iterator)
From cppreference.com
< cpp | ranges | transform view | iterator
C++
Ranges library
|
Range primitives | |||||||
|
Range concepts | |||||||||||||||||||
|
Range factories | |||||||||
|
Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
Helper items | |||||||||||||||||
|
std::ranges::transform_view
Member functions | ||||
Deduction guides | ||||
Iterator | ||||
iter_move(transform_view::iterator) | ||||
Sentinel | ||||
friend
constexpr decltype(
auto
) iter_move(
const
/*iterator*/
& i )
noexcept ( /* see below */ ) ; |
(since C++20) | |
If *i is an lvalue reference, returns std::move (*i) ; otherwise returns *i
This function is not visible to ordinary unqualified or qualified lookup, and can only be found by argument-dependent lookup when transform_view::iterator<Const>
Parameters
i | - | iterator |
Return value
std::move(*i) if *i is an lvalue reference, otherwise *i
Exceptions
noexcept specification:
where *i.parent_->fun_ denotes the transformation function, i.current_
noexcept
(
noexcept
(
std::invoke
(
*i.parent_
-
>fun_, *i.current_
)
)
)