Range-v3 Range algorithms, views, and actions for the Standard Library |

Public Member Functions | List of all members
ranges::indirected< Fn > Struct Template Reference
Functional

## Public Member Functions
| indirected (Fn fn)
template<typename... Its>
invoke_result_t< Fn &, iter_reference_t< Its >... > | operator() (copy_tag, Its...) const
template<typename... Its>
auto | operator() (Its... its) const noexcept(noexcept(invoke((Fn const &) fn_, *its...))) -> decltype(invoke((Fn const &) fn_, *its...))
template<typename... Its>
auto | operator() (Its... its) noexcept(noexcept(invoke(fn_, *its...))) -> decltype(invoke(fn_, *its...))
template<typename... Its>
auto | operator() (move_tag, Its... its) const noexcept(noexcept(static_cast< aux::move_t< invoke_result_t< Fn const &, iter_reference_t< Its >... >>>(aux::move(invoke((Fn const &) fn_, *its...))))) -> decltype(static_cast< aux::move_t< invoke_result_t< Fn const &, iter_reference_t< Its >... >>>(aux::move(invoke((Fn const &) fn_, *its...))))
template<typename... Its>
auto | operator() (move_tag, Its... its) noexcept(noexcept(static_cast< aux::move_t< invoke_result_t< Fn &, iter_reference_t< Its >... >>>(aux::move(invoke(fn_, *its...))))) -> decltype(static_cast< aux::move_t< invoke_result_t< Fn &, iter_reference_t< Its >... >>>(aux::move(invoke(fn_, *its...))))