[#BloombergLP-bsltf-DegenerateFunctor-exchangeValues] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsltf.adoc[bsltf]::xref:BloombergLP/bsltf/DegenerateFunctor.adoc[DegenerateFunctor]::exchangeValues :relfileprefix: ../../../ :mrdocs: Swap the wrapped `FUNCTOR` object, by move‐constructing a temporary object from the specified `*other`, then alternately destroying and in‐place move‐constructing new values for each of `*other` and `*this`. Note that this function is deliberately _not_ named `swap` as some "clever" template libraries may try to call a member‐swap function when they can find it, and ADL‐swap is not available. Also note that this overload is needed only so that the ADL‐enabling free‐function `swap` can be defined, as the native std library `std::swap` function will not accept this class (with its deliberate degenerate nature) on AIX, or on Windows with Visual C++ prior to VC2010. == Synopsis Declared in `<bsltf_degeneratefunctor.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- void exchangeValues(xref:BloombergLP/bsltf/DegenerateFunctor.adoc[DegenerateFunctor]* other); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#