26template <
class,
class>
27struct FunctionWithSignature : std::false_type
31template <
class Fn,
class Ret,
class... Args>
32struct FunctionWithSignature<Fn, Ret (Args...)>
34 static constexpr bool value =
requires (Fn&& t, Ret (*fp) (Args...)) { fp = &t; };
37template <
class,
class>
38struct FunctionWithSignatureOrImplicitlyConvertible : std::false_type
42template <
class Fn,
class Ret,
class... Args>
43struct FunctionWithSignatureOrImplicitlyConvertible<Fn, Ret (Args...)>
45 static constexpr bool value =
requires (Fn&& t, Args&&... args) { { t (args...) } -> std::convertible_to<Ret>; };
69template <
class Fn,
class Signature>
88template <
class Fn,
class Signature>
Constrains Fn to be a function with the specified function signature or some signature with implicitl...
Definition: FunctionConcepts.h:89
Constrains Fn to be a function with an exact function signature.
Definition: FunctionConcepts.h:70