8#ifndef INCLUDED_BSLTF_STDALLOCATORADAPTOR
9#define INCLUDED_BSLTF_STDALLOCATORADAPTOR
126#include <bslscm_version.h>
145#if BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
149# define COMPILING_BSLTF_STDALLOCATORADAPTOR_H
151# undef COMPILING_BSLTF_STDALLOCATORADAPTOR_H
167template <
class ALLOCATOR>
174#if !BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
180 template <
class ELEMENT_TYPE,
class... Args>
182 ELEMENT_TYPE *elemAddr,
183 Args&&... arguments);
188 template <
class ELEMENT_TYPE,
class... Args>
190 ELEMENT_TYPE *elemAddr,
191 Args&&... arguments);
214 template <
class BDE_OTHER_TYPE>
237 template <
class ANY_TYPE>
240#ifdef BSLS_COMPILERFEATURES_SUPPORT_DEFAULTED_FUNCTIONS
251#ifdef BSLS_COMPILERFEATURES_SUPPORT_DEFAULTED_FUNCTIONS
261#if !BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
270 template <
class ELEMENT_TYPE,
class... Args>
271 void construct(ELEMENT_TYPE *address, Args&&... arguments);
297template <
class TYPE1,
class TYPE2>
304template <
class TYPE1,
class TYPE2>
317#if !BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
318template <
class ALLOCATOR>
319template <
class ELEMENT_TYPE,
class... Args>
323 ELEMENT_TYPE *address,
326 AllocatorTraits::construct(
333template <
class ALLOCATOR>
334template <
class ELEMENT_TYPE,
class... Args>
336void StdAllocatorAdaptor<ALLOCATOR>::privateConstruct(
338 ELEMENT_TYPE *address,
341 AllocatorTraits::construct(
348template <
class ALLOCATOR>
355template <
class ALLOCATOR>
358: ALLOCATOR(allocator)
362template <
class ALLOCATOR>
369template <
class ALLOCATOR>
370template <
class ANY_TYPE>
379#if !BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
380template <
class ALLOCATOR>
381template <
class ELEMENT_TYPE,
class... Args>
393 enum { k_PassSelfAtEnd =
407template <
class ALLOCATOR>
414template <
class ALLOCATOR>
420 AllocatorTraits::select_on_container_copy_construction(
421 *
reinterpret_cast<const ALLOCATOR *
>(
this)));
425template <
class TYPE1,
class TYPE2>
433template <
class TYPE1,
class TYPE2>
Definition bslma_bslallocator.h:580
Definition bsltf_stdallocatoradaptor.h:168
ALLOCATOR::size_type size_type
Definition bsltf_stdallocatoradaptor.h:200
const ALLOCATOR & allocator() const
Definition bsltf_stdallocatoradaptor.h:409
BSLMF_NESTED_TRAIT_DECLARATION(StdAllocatorAdaptor, bslma::IsStdAllocator)
StdAllocatorAdaptor< ALLOCATOR > select_on_container_copy_construction() const
Definition bsltf_stdallocatoradaptor.h:417
void construct(ELEMENT_TYPE *address, Args &&... arguments)
Definition bsltf_stdallocatoradaptor.h:383
ALLOCATOR::difference_type difference_type
Definition bsltf_stdallocatoradaptor.h:201
ALLOCATOR::reference reference
Definition bsltf_stdallocatoradaptor.h:204
StdAllocatorAdaptor & operator=(const StdAllocatorAdaptor &rhs)=default
ALLOCATOR::pointer pointer
Definition bsltf_stdallocatoradaptor.h:202
ALLOCATOR::const_reference const_reference
Definition bsltf_stdallocatoradaptor.h:205
StdAllocatorAdaptor()
Definition bsltf_stdallocatoradaptor.h:350
ALLOCATOR::value_type value_type
Definition bsltf_stdallocatoradaptor.h:206
ALLOCATOR::const_pointer const_pointer
Definition bsltf_stdallocatoradaptor.h:203
~StdAllocatorAdaptor()=default
StdAllocatorAdaptor(const StdAllocatorAdaptor &original)=default
#define BSLS_COMPILERFEATURES_FORWARD(T, V)
Definition bsls_compilerfeatures.h:2018
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
BloombergLP::bsls::Nullptr_Impl::Type nullptr_t
Definition bsls_nullptr.h:281
Definition bsltf_allocargumenttype.h:92
Definition bslma_allocatortraits.h:1061
Definition bslmf_isconvertible.h:867
Definition bslmf_usesallocator.h:165
Definition bslma_isstdallocator.h:201
Definition bsltf_stdallocatoradaptor.h:216
StdAllocatorAdaptor< typename ALLOCATOR::template rebind< BDE_OTHER_TYPE >::other > other
Definition bsltf_stdallocatoradaptor.h:219