pub trait RuntimeLinearMemory: Send + Sync {
    fn byte_size(&self) -> usize;
    fn maximum_byte_size(&self) -> Option<usize>;
    fn grow_to(&mut self, size: usize) -> Result<()>;
    fn vmmemory(&mut self) -> VMMemoryDefinition;
    fn needs_init(&self) -> bool;
}
Expand description

A linear memory

Required Methods

Returns the number of allocated bytes.

Returns the maximum number of bytes the memory can grow to. Returns None if the memory is unbounded.

Grow memory to the specified amount of bytes.

Returns an error if memory can’t be grown by the specified amount of bytes.

Return a VMMemoryDefinition for exposing the memory to compiled wasm code.

Does this memory need initialization? It may not if it already has initial contents courtesy of the MemoryImage passed to RuntimeMemoryCreator::new_memory().

Implementors