# std::experimental::ranges::IndirectUnaryInvocable, std::experimental::ranges::IndirectRegularUnaryInvocable

From cppreference.com
< cpp‎ | experimental‎ | ranges

Defined in header `<experimental/ranges/iterator>` |  |
template <class F, class I> concept bool IndirectUnaryInvocable = Readable<I> && CopyConstructible<F> && Invocable<F&, ranges::value_type_t<I>&> && Invocable<F&, ranges::reference_t<I>> && Invocable<F&, ranges::iter_common_reference_t<I>> && CommonReference< std::result_of_t<F&(ranges::value_type_t<I>&)>, std::result_of_t<F&(ranges::reference_t<I>&&)>>; |  | (ranges TS)
template <class F, class I> concept bool IndirectRegularUnaryInvocable = Readable<I> && CopyConstructible<F> && RegularInvocable<F&, ranges::value_type_t<I>&> && RegularInvocable<F&, ranges::reference_t<I>> && RegularInvocable<F&, ranges::iter_common_reference_t<I>> && CommonReference< std::result_of_t<F&(ranges::value_type_t<I>&)>, std::result_of_t<F&(ranges::reference_t<I>&&)>>; |  | (ranges TS)

| This section is incomplete Reason: add description and extra caveats

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/experimental/ranges/iterator/IndirectUnaryInvocable&oldid=105862"