void operator()(const typename A::pointer &p) { containers_detail::get_pointer(p)->~value_type(); priv_deallocate(p, alloc_version()); }
~scoped_deallocator() { if (m_ptr)priv_deallocate(alloc_version()); }
void operator()(pointer ptr) { if (ptr) priv_deallocate(ptr, alloc_version()); }