Namespaces
Variants

iter_move (ranges::transform_view:: iterator )

From cppreference.net
Ranges library
Range adaptors
friend constexpr decltype ( auto ) iter_move ( const /*iterator*/ & i )
noexcept ( /* see below */ ) ;
(начиная с C++20)

Если * i является lvalue-ссылкой, возвращает std::move ( * i ) ; в противном случае возвращает * i .

Эта функция не видна при обычном unqualified или qualified lookup , и может быть найдена только с помощью argument-dependent lookup , когда transform_view:: iterator <Const> является ассоциированным классом аргументов.

Параметры

i - iterator

Возвращаемое значение

std :: move ( * i ) если * i является lvalue-ссылкой, иначе * i

Исключения

noexcept спецификация:
noexcept ( noexcept ( std:: invoke ( * i. parent_ - > fun_, * i. current_ ) ) )
where * i. parent_ - > fun_ denotes the transformation function, i. current_ denotes the underlying iterator.