Struct wasmi::Caller

source ·
pub struct Caller<'a, T> { /* private fields */ }
Expand description

Represents the caller’s context when creating a host function via Func::wrap.

Implementations§

source§

impl<'a, T> Caller<'a, T>

source

pub fn get_export(&self, name: &str) -> Option<Extern>

Queries the caller for an exported definition identifier by name.

Returns None if there is no associated Instance of the caller or if the caller does not provide an export under the name name.

source

pub fn data(&self) -> &T

Returns a shared reference to the user provided host data.

source

pub fn data_mut(&mut self) -> &mut T

Returns an exclusive reference to the user provided host data.

source

pub fn engine(&self) -> &Engine

Returns a shared reference to the used Engine.

source

pub fn get_fuel(&self) -> Result<u64, FuelError>

Returns the remaining fuel of the Store if fuel metering is enabled.

For more information see Store::get_fuel.

§Errors

If fuel metering is disabled.

source

pub fn set_fuel(&mut self, fuel: u64) -> Result<(), FuelError>

Sets the remaining fuel of the Store to value if fuel metering is enabled.

For more information see Store::get_fuel.

§Errors

If fuel metering is disabled.

Trait Implementations§

source§

impl<T> AsContext for Caller<'_, T>

§

type Data = T

The user state associated with the Store, aka the T in Store<T>.
source§

fn as_context(&self) -> StoreContext<'_, Self::Data>

Returns the store context that this type provides access to.
source§

impl<T> AsContextMut for Caller<'_, T>

source§

fn as_context_mut(&mut self) -> StoreContextMut<'_, Self::Data>

Returns the store context that this type provides access to.
source§

impl<'a, T: AsContextMut> From<&'a mut T> for Caller<'a, T::Data>

source§

fn from(ctx: &'a mut T) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<'a, T> Freeze for Caller<'a, T>

§

impl<'a, T> !RefUnwindSafe for Caller<'a, T>

§

impl<'a, T> Send for Caller<'a, T>
where T: Send,

§

impl<'a, T> Sync for Caller<'a, T>
where T: Sync,

§

impl<'a, T> Unpin for Caller<'a, T>

§

impl<'a, T> !UnwindSafe for Caller<'a, T>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> Downcast for T
where T: Any,

source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.