8#ifndef INCLUDED_BALST_STACKTRACETESTALLOCATOR
9#define INCLUDED_BALST_STACKTRACETESTALLOCATOR
508#include <balscm_version.h>
519#include <bsl_cstddef.h>
520#include <bsl_functional.h>
521#include <bsl_iosfwd.h>
563 enum AllocatorMagic { k_STACK_TRACE_TEST_ALLOCATOR_MAGIC = 1335775331 };
570 AllocatorMagic d_magic;
584 BlockHeader *d_blocks;
597 const int d_maxRecordedFrames;
604 const int d_traceBufferLength;
612 bsl::ostream *d_ostream;
633 int checkBlockHeader(
const BlockHeader *blockHdr)
const;
782 return d_failureHandler;
788 return d_numBlocksInUse;
794 return d_numAllocations;
Definition balst_stacktracetestallocator.h:551
const FailureHandler & failureHandler() const
Definition balst_stacktracetestallocator.h:780
void setFailureHandler(const FailureHandler &func)
bsl::size_t numBlocksInUse() const
Return the number of blocks currently allocated from this object.
Definition balst_stacktracetestallocator.h:786
bsl::function< void()> FailureHandler
Definition balst_stacktracetestallocator.h:555
StackTraceTestAllocator(bslma::Allocator *basicAllocator=0)
void * allocate(size_type size) BSLS_KEYWORD_OVERRIDE
void setOstream(bsl::ostream *ostream)
void setAllocationLimit(bsls::Types::Int64 limit)
void setName(const char *name)
~StackTraceTestAllocator() BSLS_KEYWORD_OVERRIDE
void deallocate(void *address) BSLS_KEYWORD_OVERRIDE
bsls::Types::Int64 allocationLimit() const
bsls::Types::Int64 numAllocations() const
Definition balst_stacktracetestallocator.h:792
StackTraceTestAllocator(int numRecordedFrames, bslma::Allocator *basicAllocator=0)
void release() BSLS_KEYWORD_OVERRIDE
Deallocate all memory held by this allocator.
void setDemanglingPreferredFlag(bool value)
void reportBlocksInUse(bsl::ostream *ostream=0) const
Definition bdlma_managedallocator.h:392
Forward declaration.
Definition bslstl_function.h:946
Definition bslma_allocator.h:545
std::size_t size_type
Definition bslma_allocator.h:593
Definition bslmt_mutex.h:317
Definition bsls_atomic.h:896
Definition bsls_atomic.h:744
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
#define BSLS_KEYWORD_OVERRIDE
Definition bsls_keyword.h:695
Definition balst_objectfileformat.h:152
Definition bdlat_valuetypefunctions.h:939
Definition bdlt_iso8601util.h:707
long long Int64
Definition bsls_types.h:134