iter_move(ranges::transform_view::iterator)
From cppreference.com
< cpp | ranges | transform view | iterator
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>
is an associated class of the arguments.
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_ denotes the underlying iterator.
noexcept(noexcept(std::invoke(*i.parent_->fun_, *i.current_)))