[#BloombergLP-bslmf-InvokeResult_MemObjPtrImpDispatch-0a-checkVolatile-07]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmf.adoc[bslmf]::xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a.adoc[InvokeResult&lowbar;MemObjPtrImpDispatch&lt;bslmf::VoidType&lt;decltype(InvokeResult&lowbar;ImpUtils&colon;&colon;myDeclval&lt;t&lowbar;ARGTYPE&gt;()&period;&ast;
                 InvokeResult&lowbar;ImpUtils&colon;&colon;myDeclval&lt;t&lowbar;FN&gt;())&gt;::type, true, false, t&lowbar;FN, t&lowbar;ARGTYPE&gt;]::checkVolatile
:relfileprefix: ../../../
:mrdocs:

`checkVolatile` overloads

== Synopses

Declared in `&lt;bslmf&lowbar;invokeresult&period;h&gt;`

(Declared but not defined) Return `bslmf&colon;&colon;Tag&lt;true&gt;()` if the argument is `volatile`&hyphen;qualified and `bslmf&colon;&colon;Tag&lt;false&gt;()` otherwise&period; Note that if `t&lowbar;TP` is both const&hyphen; and volatile&hyphen;qualified, it will not match `volatile t&lowbar;TP&amp;`, hence the need for the const overloads&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class t&lowbar;TP&gt;
static
xref:BloombergLP/bslmf/Tag-0b.adoc[bslmf::Tag&lt;false&gt;]
xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-0e.adoc[checkVolatile](t&lowbar;TP&);
----

[.small]#xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-0e.adoc[_» more&period;&period;&period;_]#

Return `bslmf&colon;&colon;Tag&lt;true&gt;()` if the argument is `volatile`&hyphen;qualified&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class t&lowbar;TP&gt;
static
xref:BloombergLP/bslmf/Tag-0b.adoc[bslmf::Tag&lt;true&gt;]
xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-0c.adoc[checkVolatile](t&lowbar;TP volatile&);
----

[.small]#xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-0c.adoc[_» more&period;&period;&period;_]#

Return `bslmf&colon;&colon;Tag&lt;false&gt;()` for a `const`&hyphen;qualified argument&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class t&lowbar;TP&gt;
static
xref:BloombergLP/bslmf/Tag-0b.adoc[bslmf::Tag&lt;false&gt;]
xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-0f.adoc[checkVolatile](t&lowbar;TP const&);
----

[.small]#xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-0f.adoc[_» more&period;&period;&period;_]#

Return `bslmf&colon;&colon;Tag&lt;true&gt;()` if the argument is `const volatile`&hyphen;qualified&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class t&lowbar;TP&gt;
static
xref:BloombergLP/bslmf/Tag-0b.adoc[bslmf::Tag&lt;true&gt;]
xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-06.adoc[checkVolatile](t&lowbar;TP const volatile&);
----

[.small]#xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0a/checkVolatile-06.adoc[_» more&period;&period;&period;_]#


[.small]#Created with https://www.mrdocs.com[MrDocs]#
