BloombergLP::bslmf::InvokeResult_MemFuncPtrImpDispatch

Forward declaration.

Synopsis

Declared in <bslmf_invokeresult.h>

template<
    class t_VOID_TYPE,
    bool t_ARG1_DERIVES_FROM_CLASS,
    bool t_ARG1_IS_REFERENCE_WRAPPER,
    class t_FN,
    class t_ARG1TYPE,
    class... t_ARGTYPES>
struct InvokeResult_MemFuncPtrImpDispatch;

Specializations

NameDescription
InvokeResult_MemFuncPtrImpDispatch<bslmf::VoidType<decltype(((*InvokeResult_ImpUtils::myDeclval<t_ARG1TYPE>()).* InvokeResult_ImpUtils::myDeclval<t_FN>())( InvokeResult_ImpUtils::myDeclval<t_ARGTYPES>()...))>::type, false, false, t_FN, t_ARG1TYPE, t_ARGTYPES...> invoke_result for ((*arg1).*fn)(args...).
InvokeResult_MemFuncPtrImpDispatch<bslmf::VoidType<decltype((InvokeResult_ImpUtils::myDeclval<t_ARG1TYPE>().* InvokeResult_ImpUtils::myDeclval<t_FN>())( InvokeResult_ImpUtils::myDeclval<t_ARGTYPES>()...))>::type, true, false, t_FN, t_ARG1TYPE, t_ARGTYPES...> invoke_result for (arg1.*fn)(args...).
InvokeResult_MemFuncPtrImpDispatch<bslmf::VoidType<decltype((InvokeResult_ImpUtils::myDeclval<t_ARG1TYPE>().get().* InvokeResult_ImpUtils::myDeclval<t_FN>())( InvokeResult_ImpUtils::myDeclval<t_ARGTYPES>()...))>::type, false, true, t_FN, t_ARG1TYPE, t_ARGTYPES...> invoke_result for (arg1.get().*fn)(args...).

Derived Classes

NameDescription
InvokeResult_MemFuncPtrImp<t_FN, t_ARG1TYPE, t_ARGTYPES...> invoke_result for a pointer-to-member-function with arguments.