pub trait MemoryExt: Memory {
// Provided methods
fn get_opt(&self, ptr: u32, len: u32) -> Result<Option<&[u8]>, Trap> { ... }
fn get_array<const LEN: usize>(&self, ptr: u32) -> Result<&[u8; LEN], Trap> { ... }
fn get_array_mut<const LEN: usize>(
&self,
ptr: u32,
) -> Result<&mut [u8; LEN], Trap> { ... }
fn from_bytes<T: AnyBitPattern>(&self, ptr: u32) -> Result<&T, Trap> { ... }
fn from_bytes_mut<T: NoUninit + AnyBitPattern>(
&self,
ptr: u32,
) -> Result<&mut T, Trap> { ... }
fn alloc_copy(
&mut self,
ptr_ptr: u32,
len_ptr: Option<u32>,
data: &[u8],
) -> Result<u32, Trap> { ... }
}Expand description
Helper methods on top of Memory.
Provided Methods§
Sourcefn get_opt(&self, ptr: u32, len: u32) -> Result<Option<&[u8]>, Trap>
fn get_opt(&self, ptr: u32, len: u32) -> Result<Option<&[u8]>, Trap>
Returns a shared slice from the applet memory or None if ptr == 0.
Sourcefn get_array<const LEN: usize>(&self, ptr: u32) -> Result<&[u8; LEN], Trap>
fn get_array<const LEN: usize>(&self, ptr: u32) -> Result<&[u8; LEN], Trap>
Returns a shared array from the applet memory.
Sourcefn get_array_mut<const LEN: usize>(
&self,
ptr: u32,
) -> Result<&mut [u8; LEN], Trap>
fn get_array_mut<const LEN: usize>( &self, ptr: u32, ) -> Result<&mut [u8; LEN], Trap>
Returns an exclusive array from the applet memory.
Sourcefn from_bytes<T: AnyBitPattern>(&self, ptr: u32) -> Result<&T, Trap>
fn from_bytes<T: AnyBitPattern>(&self, ptr: u32) -> Result<&T, Trap>
Returns a shared object from the applet memory.
Sourcefn from_bytes_mut<T: NoUninit + AnyBitPattern>(
&self,
ptr: u32,
) -> Result<&mut T, Trap>
fn from_bytes_mut<T: NoUninit + AnyBitPattern>( &self, ptr: u32, ) -> Result<&mut T, Trap>
Returns an exclusive object from the applet memory.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".