8#ifndef INCLUDED_BSLMA_DESTRUCTIONUTIL
9#define INCLUDED_BSLMA_DESTRUCTIONUTIL
129#include <bslscm_version.h>
164 template <
class TYPE>
166 template <
class TYPE>
168 template <
class TYPE>
175 static void scribbleOverMemory(
void *address,
size_t numBytes);
185 template <
class TYPE>
186 static void destroy(TYPE *
object);
203#ifdef BSLS_ASSERT_SAFE_IS_ACTIVE
204 scribbleOverMemory(address,
sizeof(TYPE));
218#ifdef BSLS_PLATFORM_CMP_MSVC
219#pragma warning( push )
220#pragma warning( disable : 4100 )
227#ifndef BSLS_PLATFORM_CMP_SUN
234 const_cast<NoCvType *
>(address)->~NoCvType();
238#ifdef BSLS_PLATFORM_CMP_MSVC
239#pragma warning( pop )
245void DestructionUtil::destroy(TYPE *
object)
#define BSLS_ASSERT_SAFE(X)
Definition bsls_assert.h:1762
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition balxml_encoderoptions.h:68
remove_const< typenameremove_volatile< t_TYPE >::type >::type type
Definition bslmf_removecv.h:126
Definition bslma_destructionutil.h:153