[#BloombergLP-bslmf-InvokeResult_FuncPtrImp-0c-unpoint-0b7] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmf.adoc[bslmf]::xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c.adoc[InvokeResult_FuncPtrImp<bslmf::VoidType<decltype(InvokeResult_ImpUtils::myDeclval<t_FN>()( InvokeResult_ImpUtils::myDeclval<t_ARGTYPES>()...))>::type, t_FN, t_ARGTYPES...>]::unpoint :relfileprefix: ../../../ :mrdocs: `unpoint` overloads == Synopses Declared in `<bslmf_invokeresult.h>` If the argument type `t_TP` is pointer to type `X`, where `X` is not cv‐`void`, return a reference to `X`; otherwise return a reference to `t_TP`. Note that these functions are declared but not defined and are intended to be called only in an unevaluated context. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_TP> static t_TP& xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-06.adoc[unpoint](t_TP&); ---- [.small]#xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-06.adoc[_» more..._]# Same as the other `unpoint` overloads, for `const t_TP&`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_TP> static t_TP const& xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-0b3.adoc[unpoint](t_TP const&); ---- [.small]#xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-0b3.adoc[_» more..._]# Same as the other `unpoint` overloads, for `t_TP *&`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_TP> static t_TP& xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-05.adoc[unpoint](t_TP*&) requires !bsl::is_void<t_TP>::value; ---- [.small]#xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-05.adoc[_» more..._]# Same as the other `unpoint` overloads, for `t_TP *volatile&`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_TP> static t_TP& xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-01.adoc[unpoint](t_TP volatile*&) requires !bsl::is_void<t_TP>::value; ---- [.small]#xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-01.adoc[_» more..._]# Same as the other `unpoint` overloads, for `t_TP *const&`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_TP> static t_TP& xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-0e.adoc[unpoint](t_TP const*&) requires !bsl::is_void<t_TP>::value; ---- [.small]#xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-0e.adoc[_» more..._]# Same as the other `unpoint` overloads, for `t_TP *const volatile&`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_TP> static t_TP& xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-03.adoc[unpoint](t_TP const volatile*&) requires !bsl::is_void<t_TP>::value; ---- [.small]#xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0c/unpoint-03.adoc[_» more..._]# [.small]#Created with https://www.mrdocs.com[MrDocs]#