std::result_of,std::invoke_result (3) - Linux Manuals
std::result_of,std::invoke_result: std::result_of,std::invoke_result
NAME
std::result_of,std::invoke_result - std::result_of,std::invoke_result
Synopsis
Defined in header <type_traits>
template< class >
class result_of; // not defined (since C++11)
template< class F, class... ArgTypes > (removed in C++20)
class result_of<F(ArgTypes...)>;
template< class F, class... ArgTypes> (2) (since C++17)
class invoke_result;
Deduces the return type of an INVOKE expression at compile time.
F must be a callable type, reference to function, or reference to callable type. Invoking F with ArgTypes... must be a well-formed expression. (since C++11)
F and all types in ArgTypes can be any complete type, array of unknown bound, or (possibly cv-qualified) void. (since C++14)
Member types
Member type Definition
type Only defined if F can be called with the arguments ArgTypes... in unevaluated context.
Helper types
template< class T > (since C++14)
using result_of_t = typename result_of<T>::type; (1) (deprecated in C++17)