Inherited by vector_base< macstl::mach_allocator< T > > [private]
.
Inheritance diagram for mach_allocator:
Puts the Standard C++ Allocator interface on the Mach VM allocator. This is the fundamental allocator on the OS X system, whose main characteristic is that it allocates pages "lazily" i.e. memory is not actually allocated until it is accessed. Also allocated memory is always page-aligned and zero-filled.
This lets you use Mach allocators to allocate memory for STL containers and C++ objects. All allocator instances are not distinct and compare equal.
T | The allocated type. |
Public Types | |
typedef impl::allocator_base< T > | base |
The base type. | |
Public Member Functions | |
template<class T2> | |
mach_allocator (const mach_allocator< T2 > &) throw () | |
Copies the allocator. | |
mach_allocator () throw () | |
Constructs an allocator. | |
Static Public Member Functions | |
static base::pointer | allocate (typename base::size_type n, mach_allocator< void >::const_pointer=0) |
Allocates n objects. | |
static void | deallocate (typename base::pointer ptr, typename base::size_type n) |
Deallocates n objects at address ptr. | |
Friends | |
bool | operator!= (const mach_allocator &, const mach_allocator &) |
Tests whether left and right are different allocators. Always false. | |
bool | operator== (const mach_allocator &, const mach_allocator &) |
Tests whether left and right are the same allocator. Always true. | |
Classes | |
struct | rebind |
Rebinder for allocator. More... |