Struct capnp::message::HeapAllocator [−][src]
pub struct HeapAllocator { /* fields omitted */ }
Expand description
Standard segment allocator. Allocates each segment via alloc::alloc::alloc_zeroed()
.
Implementations
Sets the size of the initial segment in words, where 1 word = 8 bytes.
Sets the allocation strategy for segments after the first one.
Sets the maximum number of words allowed in a single allocation.
Trait Implementations
Allocates zeroed memory for a new segment, returning a pointer to the start of the segment
and a u32 indicating the length of the segment in words. The allocated segment must be
at least minimum_size
words long (minimum_size * 8
bytes long). Allocator implementations
commonly allocate much more than the minimum, to reduce the total number of segments needed.
A reasonable strategy is to allocate the maximum of minimum_size
and twice the size of the
previous segment. Read more
Indicates that a segment, previously allocated via allocate_segment(), is no longer in use.
word_size
is the length of the segment in words, as returned from allocate_segment()
.
words_used
is always less than or equal to word_size
, and indicates how many
words (contiguous from the start of the segment) were possibly written with non-zero values. Read more