1.5 KiB
1.5 KiB
[func.invoke]
22 General utilities library [utilities]
22.10 Function objects [function.objects]
22.10.5 invoke functions [func.invoke]
template<class F, class... Args> constexpr invoke_result_t<F, Args...> invoke(F&& f, Args&&... args) noexcept(is_nothrow_invocable_v<F, Args...>);
Constraints: is_invocable_v<F, Args...> is true.
Returns: INVOKE(std::forward(f), std::forward(args)...) ([func.require]).
template<class R, class F, class... Args> constexpr R invoke_r(F&& f, Args&&... args) noexcept(is_nothrow_invocable_r_v<R, F, Args...>);
Constraints: is_invocable_r_v<R, F, Args...> is true.
Returns: INVOKE(std::forward(f), std::forward(args)...) ([func.require]).