8#ifndef INCLUDED_BSLSTL_REFERENCEWRAPPER
9#define INCLUDED_BSLSTL_REFERENCEWRAPPER
133#include <bslscm_version.h>
142#ifdef BSLS_LIBRARYFEATURES_HAS_CPP11_BASELINE_LIBRARY
145#define BSLSTL_REFRENCEWRAPPER_IS_ALIASED
150using std::reference_wrapper;
154#ifndef BSLSTL_REFRENCEWRAPPER_IS_ALIASED
169class reference_wrapper {
184 reference_wrapper(
const reference_wrapper& original) =
default;
188 ~reference_wrapper() =
default;
192 reference_wrapper& operator=(
const reference_wrapper& rhs) =
default;
213reference_wrapper<const T> cref(reference_wrapper<T> original)
241 : d_represented_p(BloombergLP::bsls::Util::addressOf(
object))
250 return *d_represented_p;
257 return *d_represented_p;
263bsl::reference_wrapper<const T> bsl::cref(
const T&
object)
266 return reference_wrapper<const T>(
object);
271bsl::reference_wrapper<const T> bsl::cref(bsl::reference_wrapper<T> original)
274 return cref(original.get());
281 return reference_wrapper<T>(
object);
286bsl::reference_wrapper<T> bsl::ref(bsl::reference_wrapper<T> original)
289 return ref(original.get());
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
#define BSLS_KEYWORD_NOEXCEPT
Definition bsls_keyword.h:632
Definition bdlb_printmethods.h:283
Definition bdlbb_blob.h:576