8#ifndef INCLUDED_BSLALG_ARRAYDESTRUCTIONPRIMITIVES
9#define INCLUDED_BSLALG_ARRAYDESTRUCTIONPRIMITIVES
134#include <bslscm_version.h>
168 template <
class TARGET_TYPE,
class ALLOCATOR>
169 static void destroy(TARGET_TYPE *begin,
173 template <
class TARGET_TYPE,
class ALLOCATOR>
174 static void destroy(TARGET_TYPE *begin,
185 template <
class TARGET_TYPE>
187 template <
class TARGET_TYPE>
205 template <
class TARGET_TYPE,
class ALLOCATOR>
207 destroy(TARGET_TYPE *begin, TARGET_TYPE *end, ALLOCATOR allocator);
217 template <
class TARGET_TYPE>
218 static void destroy(TARGET_TYPE *begin, TARGET_TYPE *end);
230template <
class TARGET_TYPE,
class ALLOCATOR>
240#ifdef BSLS_ASSERT_SAFE_IS_ACTIVE
250template <
class TARGET_TYPE,
class ALLOCATOR>
256 for (; begin != end; ++begin) {
261template <
class TARGET_TYPE>
270#ifdef BSLS_ASSERT_SAFE_IS_ACTIVE
278template <
class TARGET_TYPE>
283 for (; begin != end; ++begin) {
284 begin->~TARGET_TYPE();
289template <
class TARGET_TYPE,
class ALLOCATOR>
305template <
class TARGET_TYPE>
321#ifndef BDE_OPENSOURCE_PUBLICATION
bslalg::ArrayDestructionPrimitives bslalg_ArrayDestructionPrimitives
This alias is defined for backward compatibility.
Definition bslalg_arraydestructionprimitives.h:327
#define BSLS_ASSERT_SAFE(X)
Definition bsls_assert.h:1762
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bdlc_flathashmap.h:1805
static void destroy(ALLOCATOR_TYPE &basicAllocator, ELEMENT_TYPE *elementAddr)
Definition bslma_allocatortraits.h:1494
Definition bslalg_arraydestructionprimitives.h:158
static void destroy(TARGET_TYPE *begin, TARGET_TYPE *end, ALLOCATOR allocator, bsl::true_type)
Definition bslalg_arraydestructionprimitives.h:232
static void scribbleOverMemory(void *ptr, size_t numBytes)