pub enum MemoryInit<'a> {
Unprocessed(Vec<MemoryInitializer<'a>>),
Processed(Vec<(MemoryIndex, MemorySegmentOffset, RuntimeDataIndex)>),
}Expand description
Different forms of memory initialization that happens for a module.
Variants§
Unprocessed(Vec<MemoryInitializer<'a>>)
Raw active data segments that are being applied for an instance.
This list contains the raw data which hasn’t yet been processed into
RuntimeDataIndex, for example. This is later processed during
ModuleTranslation::finalize_memory_init to optionally shuffle things
around.
Processed(Vec<(MemoryIndex, MemorySegmentOffset, RuntimeDataIndex)>)
Finalized memory initialization to be executed after
ModuleTranslation::finalize_memory_init has run. This represents
active data segments which may have been merged from the Unprocessed
list above, and may or may not have statically know offsets.
Auto Trait Implementations§
impl<'a> Freeze for MemoryInit<'a>
impl<'a> RefUnwindSafe for MemoryInit<'a>
impl<'a> Send for MemoryInit<'a>
impl<'a> Sync for MemoryInit<'a>
impl<'a> Unpin for MemoryInit<'a>
impl<'a> UnsafeUnpin for MemoryInit<'a>
impl<'a> UnwindSafe for MemoryInit<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more