[#BloombergLP-bslstl-Function_InvokerUtil_IsFuncInvocableImp-04] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstl.adoc[bslstl]::xref:BloombergLP/bslstl/Function_InvokerUtil_IsFuncInvocableImp-03.adoc[Function_InvokerUtil_IsFuncInvocableImp]<bslmf::VoidType<Function_InvokerUtil_ResultType<FUNC, ARGS...>::type>::type, RET, FUNC, ARGS...> :relfileprefix: ../../ :mrdocs: This component‐private `struct` template provides a partial specialization of `Function_InvokerUtil_IsFuncInvocableImp` for `FUNC` types for which `bsl::invoke_result<T, FWD_ARGS...>` provides a nested `type` typedef, where `T` is the result of stripping a nothrow‐movable wrapper from `FUNC`, if present, and adding an lvalue reference, and where `FWD_ARGS...` are the types that result from forwarding objects of respective `ARGS...` types. == Synopsis Declared in `<bslstl_function_invokerutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class RET, class FUNC, class... ARGS> struct xref:BloombergLP/bslstl/Function_InvokerUtil_IsFuncInvocableImp-03.adoc[Function_InvokerUtil_IsFuncInvocableImp]<bslmf::VoidType<Function_InvokerUtil_ResultType<FUNC, ARGS...>::type>::type, RET, FUNC, ARGS...> : bsl::conditional<bsl::is_void<RET>::value, bsl::true_type, Function_InvokerUtil_IsExplicitlyConvertible<Function_InvokerUtil_ResultType<FUNC, ARGS...>::type, RET>>::type ---- == Description Specifically, `T` is `bslalg::NothrowMovableUtil::UnwrappedType<FUNC>::type&`, and `FWD_ARGS...` are the types of respective `bslmf::ForwardingTypeUtil<ARGS...>::forwardToTarget(args...)` expressions where `args...` are lvalue expressions of respective `bslmf::ForwardingType<ARGS>::Type...` types. See the class‐level documentation of the primary `Function_InvokerUtil::IsFuncInvocable` declaration for more information about the behavior of this `struct` template. == Base Classes [cols="1,4"] |=== | Name| Description | `bsl::conditional<bsl::is_void<RET>::value, bsl::true_type, Function_InvokerUtil_IsExplicitlyConvertible<Function_InvokerUtil_ResultType<FUNC, ARGS...>::type, RET>>::type` | |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#