[][src]Struct wain_exec::Machine

pub struct Machine<'module, 'source, I: Importer> { /* fields omitted */ }

Implementations

impl<'m, 's, I: Importer> Machine<'m, 's, I>[src]

pub fn instantiate(module: &'m Module<'s>, importer: I) -> Result<Self>[src]

Initialize states of execution (stack, memory, ...) and instantiate a given module. It means that 'start function' is invoked in this function if presents. The module is assumed to be validated. If an invalid module is given, the behavior is unspecified, meaning that it may crash or the result may be incorrect.

https://webassembly.github.io/spec/core/exec/modules.html#instantiation

pub fn module(&self) -> &'m Module<'s>[src]

pub fn memory(&self) -> &Memory[src]

pub fn get_global(&self, name: &str) -> Option<Value>[src]

pub fn invoke(
    &mut self,
    name: impl AsRef<str>,
    args: &[Value]
) -> Result<Option<Value>>
[src]

Auto Trait Implementations

impl<'module, 'source, I> RefUnwindSafe for Machine<'module, 'source, I> where
    I: RefUnwindSafe

impl<'module, 'source, I> Send for Machine<'module, 'source, I> where
    I: Send

impl<'module, 'source, I> Sync for Machine<'module, 'source, I> where
    I: Sync

impl<'module, 'source, I> Unpin for Machine<'module, 'source, I> where
    I: Unpin,
    'source: 'module, 

impl<'module, 'source, I> UnwindSafe for Machine<'module, 'source, I> where
    I: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.