pub trait AllocatorExt: IsA<Allocator> + Sealed + 'static {
    // Provided methods
    fn alloc(
        &self,
        size: usize,
        params: Option<&AllocationParams>
    ) -> Result<Memory, BoolError> { ... }
    fn set_default(self) { ... }
}
Expand description

Trait containing all Allocator methods.

§Implementors

Allocator

Provided Methods§

source

fn alloc( &self, size: usize, params: Option<&AllocationParams> ) -> Result<Memory, BoolError>

Use self to allocate a new memory block with memory that is at least size big.

The optional params can specify the prefix and padding for the memory. If None is passed, no flags, no extra prefix/padding and a default alignment is used.

The prefix/padding will be filled with 0 if flags contains MemoryFlags::ZERO_PREFIXED and MemoryFlags::ZERO_PADDED respectively.

When self is None, the default allocator will be used.

The alignment in params is given as a bitmask so that align + 1 equals the amount of bytes to align to. For example, to align to 8 bytes, use an alignment of 7.

§size

size of the visible memory area

§params

optional parameters

§Returns

a new Memory.

source

fn set_default(self)

Set the default allocator.

Object Safety§

This trait is not object safe.

Implementors§