Struct wasmi::NotStartedModuleRef [−][src]
Mostly instantiated ModuleRef
.
At this point memory segments and tables are copied. However, start
function (if any) is not called.
To get fully instantiated module instance, running start
function is required.
You can still access not fully initialized instance by calling not_started_instance
,
but keep in mind, that this is sort of escape hatch: module really might depend on initialization
done in start
function. It’s definitely not recommended to call any exports on ModuleRef
returned by this function.
If you sure, that there is no start
function (e.g. because you created it without one), you can
call assert_no_start
which returns ModuleRef
without calling start
function. However,
it will panic if module contains start
function.
Implementations
impl<'a> NotStartedModuleRef<'a>
[src]
pub fn not_started_instance(&self) -> &ModuleRef
[src]
Returns not fully initialized instance.
To fully initialize the instance you need to call either run_start
or
assert_no_start
. See struct documentation for details.
pub fn run_start<E: Externals>(self, state: &mut E) -> Result<ModuleRef, Trap>
[src]
Executes start
function (if any) and returns fully instantiated module.
Errors
Returns Err
if start function traps.
pub fn assert_no_start(self) -> ModuleRef
[src]
Returns fully instantiated module without running start
function.
Panics
This function panics if original module contains start
function.
pub fn has_start(&self) -> bool
[src]
Whether or not the module has a start
function.
Returns true
if it has a start
function.
Auto Trait Implementations
impl<'a> !RefUnwindSafe for NotStartedModuleRef<'a>
impl<'a> !Send for NotStartedModuleRef<'a>
impl<'a> !Sync for NotStartedModuleRef<'a>
impl<'a> Unpin for NotStartedModuleRef<'a>
impl<'a> !UnwindSafe for NotStartedModuleRef<'a>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,