View source code
Display the source code in std/experimental/allocator/common.d from which thispage was generated on github.
Report a bug
If you spot a problem with this page, click here to create aBugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.Requires a signed-in GitHub account. This works well for small changes.If you'd like to make larger changes you may want to consider usinglocal clone.

Template std.experimental.allocator.common.AllocatorState

State of an allocator A.

template AllocatorState(A);

AllocatorState!(A).sizeof is zero for A being NullAllocator, Mallocator, GCAllocator, and MMapAllocator and typically non-zero for the other.

Example

import std.experimental.allocator.building_blocks.null_allocator : NullAllocator;
import std.experimental.allocator.mallocator : Mallocator;
import std.experimental.allocator.gc_allocator : GCAllocator;
import std.experimental.allocator.mmap_allocator : MmapAllocator;
struct S
{
    mixin AllocatorState!NullAllocator n;
    mixin AllocatorState!GCAllocator g;
    mixin AllocatorState!Mallocator m;
    mixin AllocatorState!MmapAllocator p;
}
static assert(S.sizeof == 1);

Authors

Andrei Alexandrescu, Timon Gehr (Ternary)

License