8#ifndef INCLUDED_BSLTF_STDTESTALLOCATOR
9#define INCLUDED_BSLTF_STDTESTALLOCATOR
163#include <bslscm_version.h>
179#if BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
185# define COMPILING_BSLTF_STDTESTALLOCATOR_H
187# undef COMPILING_BSLTF_STDTESTALLOCATOR_H
301 template <
class BDE_OTHER_TYPE>
322 template <
class BDE_OTHER_TYPE>
349#if !BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
359 template <
class ELEMENT_TYPE,
class... Args>
365 template <
class ELEMENT_TYPE>
414 template <
class BDE_OTHER_TYPE>
435 template <
class BDE_OTHER_TYPE>
451template <
class TYPE1,
class TYPE2>
456template <
class TYPE1,
class TYPE2>
493StdTestAllocatorConfigurationGuard::StdTestAllocatorConfigurationGuard(
522template <
class BDE_OTHER_TYPE>
535 if (numElements > this->max_size()) {
536 BloombergLP::bsls::BslExceptionUtil::throwBadAlloc();
551#if !BSLS_COMPILERFEATURES_SIMULATE_CPP11_FEATURES
553template <
class ELEMENT_TYPE,
class... Args>
557 ::new (
static_cast<void*
>(address)) ELEMENT_TYPE(
563template <
class ELEMENT_TYPE>
567 address->~ELEMENT_TYPE();
604template <
class BDE_OTHER_TYPE>
611template <
class TYPE1,
class TYPE2>
619template <
class TYPE1,
class TYPE2>
Definition bslma_allocator.h:545
virtual void deallocate(void *address)=0
std::size_t size_type
Definition bslma_allocator.h:593
Definition bsltf_stdtestallocator.h:237
~StdTestAllocatorConfigurationGuard()
Definition bsltf_stdtestallocator.h:503
const void * const_pointer
Definition bsltf_stdtestallocator.h:404
bsls::Types::IntPtr difference_type
Definition bsltf_stdtestallocator.h:402
bsls::Types::UintPtr size_type
Definition bsltf_stdtestallocator.h:401
void value_type
Definition bsltf_stdtestallocator.h:405
void * pointer
Definition bsltf_stdtestallocator.h:403
Definition bsltf_stdtestallocator.h:275
const TYPE * const_pointer
Definition bsltf_stdtestallocator.h:289
BSLMF_NESTED_TRAIT_DECLARATION(StdTestAllocator, bslma::IsStdAllocator)
pointer address(reference object) const
Return the address providing modifiable access to object.
Definition bsltf_stdtestallocator.h:573
pointer allocate(size_type numElements)
bsls::Types::UintPtr size_type
Definition bsltf_stdtestallocator.h:286
StdTestAllocator()
Create a StdTestAllocator object.
Definition bsltf_stdtestallocator.h:517
bsls::Types::IntPtr difference_type
Definition bsltf_stdtestallocator.h:287
const TYPE & const_reference
Definition bsltf_stdtestallocator.h:291
TYPE * pointer
Definition bsltf_stdtestallocator.h:288
void construct(ELEMENT_TYPE *address, Args &&... arguments)
Definition bsltf_stdtestallocator.h:555
size_type max_size() const
Definition bsltf_stdtestallocator.h:589
TYPE value_type
Definition bsltf_stdtestallocator.h:292
void deallocate(pointer address, size_type numElements=1)
Definition bsltf_stdtestallocator.h:546
TYPE & reference
Definition bsltf_stdtestallocator.h:290
void destroy(ELEMENT_TYPE *address)
Definition bsltf_stdtestallocator.h:565
#define BSLS_ASSERT(X)
Definition bsls_assert.h:1976
#define BSLS_COMPILERFEATURES_FORWARD(T, V)
Definition bsls_compilerfeatures.h:2349
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bsltf_allocargumenttype.h:92
Definition bslma_isstdallocator.h:202
std::size_t UintPtr
Definition bsls_types.h:128
std::ptrdiff_t IntPtr
Definition bsls_types.h:132
static TYPE * addressOf(TYPE &obj)
Definition bsls_util.h:312
Definition bsltf_stdtestallocator.h:208
static void setDelegateAllocatorRaw(bslma::Allocator *basicAllocator)
static bslma::Allocator * delegateAllocator()
Definition bsltf_stdtestallocator.h:303
StdTestAllocator< BDE_OTHER_TYPE > other
Definition bsltf_stdtestallocator.h:305
StdTestAllocator< BDE_OTHER_TYPE > other
Definition bsltf_stdtestallocator.h:418
Definition bsltf_stdtestallocator.h:469
static size_t maxSize(size_t elementSize)