[#BloombergLP-bslmf-InvokeResult_MemFuncPtrImpDispatch-076] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmf.adoc[bslmf]::InvokeResult_MemFuncPtrImpDispatch :relfileprefix: ../../ :mrdocs: Forward declaration. == Synopsis Declared in `<bslmf_invokeresult.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- 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 [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/InvokeResult_MemFuncPtrImpDispatch-0f.adoc[`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...)`. | xref:BloombergLP/bslmf/InvokeResult_MemFuncPtrImpDispatch-01.adoc[`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...)`. | xref:BloombergLP/bslmf/InvokeResult_MemFuncPtrImpDispatch-071.adoc[`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 [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/InvokeResult_MemFuncPtrImp-0cb.adoc[`InvokeResult_MemFuncPtrImp<t_FN, t_ARG1TYPE, t_ARGTYPES...>`] | `invoke_result` for a pointer‐to‐member‐function with arguments. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#