[#BloombergLP-bslalg-NothrowMovableUtil-unwrap-0f9] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::xref:BloombergLP/bslalg/NothrowMovableUtil.adoc[NothrowMovableUtil]::unwrap :relfileprefix: ../../../ :mrdocs: `unwrap` overloads == Synopses Declared in `<bslalg_nothrowmovableutil.h>` Same as the preceding overload, for movable rvalues. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> static xref:BloombergLP/bslmf/MovableRef.adoc[bslmf::MovableRef<bslalg::NothrowMovableUtil::UnwrappedType<TYPE>::type>] xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-09.adoc[unwrap](xref:BloombergLP/bslmf/MovableRef_Deduced.adoc[BloombergLP::bslmf::MovableRef_Deduced<TYPE>] f); ---- [.small]#xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-09.adoc[_» more..._]# Same as the preceding overload, for const movable rvalues. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> static xref:BloombergLP/bslmf/MovableRef.adoc[bslmf::MovableRef<bslalg::NothrowMovableUtil::UnwrappedType<TYPE>::type const>] xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-0fd.adoc[unwrap](xref:BloombergLP/bslmf/MovableRef_Deduced.adoc[BloombergLP::bslmf::MovableRef_Deduced<TYPE const>] f); ---- [.small]#xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-0fd.adoc[_» more..._]# Return a reference to the object wrapped in the specified `f` object. If `f` is not wrapped, simply return a reference to `f`. Note that the overloads taking an lvalue argument prevent the overload taking an rvalue argument from treating the argument as a forwarding reference. The return type is chosen so both the value category and constness of the parameter are preserved even in the case of const rvalue references. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> static bslalg::NothrowMovableUtil::UnwrappedType<TYPE>::type& xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-02.adoc[unwrap](TYPE& f); ---- [.small]#xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-02.adoc[_» more..._]# Same as the preceding overload, for const lvalues. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> static bslalg::NothrowMovableUtil::UnwrappedType<TYPE>::type const& xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-01.adoc[unwrap](TYPE const& f); ---- [.small]#xref:BloombergLP/bslalg/NothrowMovableUtil/unwrap-01.adoc[_» more..._]# [.small]#Created with https://www.mrdocs.com[MrDocs]#