[#BloombergLP-bslmf-IsReferenceWrapper-0e] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmf.adoc[bslmf]::IsReferenceWrapper :relfileprefix: ../../ :mrdocs: Metafunction for detecting reference wrappers. == Synopsis Declared in `<bslmf_isreferencewrapper.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_TYPE> struct IsReferenceWrapper : xref:bsl/false_type.adoc[bsl::false_type] ---- == Description This `struct` template implements a boolean metafunction used to detect if the specified `t_TYPE` is a reference wrapper. Clients may specialize this `struct` template to inherit from `bsl::true_type` for `t_TYPE` types that are specializations of `bsl::reference_wrapper`. The behavior is undefined if any other specialization of this `struct` template is defined. == Base Classes [cols="1,4"] |=== | Name| Description | `xref:bsl/false_type.adoc[bsl::false_type]` | Metafunction representing the boolean constant `false`. |=== == Specializations [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/IsReferenceWrapper-01.adoc[`IsReferenceWrapper<bsl::reference_wrapper<T>>`] | This partial specialization of `IsReferenceWrapper` derives from `bsl::true_type` for when the (template parameter) type is a `bsl::reference_wrapper`. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#