PureGCAllocator

D's built-in garbage-collected allocator purified.

TODO remove and place with GCAllocator when https://github.com/dlang/phobos/pull/6432 has been merged.

Members

Functions

allocate
void[] allocate(size_t bytes)
deallocate
bool deallocate(void[] b)
expand
bool expand(void[] b, size_t delta)
goodAllocSize
size_t goodAllocSize(size_t n)
reallocate
bool reallocate(void[] b, size_t newSize)
resolveInternalPointer
Ternary resolveInternalPointer(void* p, void[] result)

Standard allocator methods per the semantics defined above. The deallocate and reallocate methods are @system because they may move memory around, leaving dangling pointers in user code.

Static variables

instance
PureGCAllocator instance;

Returns the global instance of this allocator type. The garbage collected allocator is thread-safe, therefore all of its methods and instance itself are shared.

Variables

alignment
enum uint alignment;

The alignment is a static constant equal to platformAlignment, which ensures proper alignment for any D data type.

Meta