pub struct Runtime<'a, R> { /* private fields */ }
Expand description

Represents the runtime properties of a WASM execution.

Implementations§

source§

impl<'a, R> Runtime<'a, R>where R: StateReader<Key, StoredValue>, R::Error: Into<Error>,

source

pub fn call_contract( &mut self, contract_hash: ContractHash, entry_point_name: &str, args: RuntimeArgs ) -> Result<CLValue, Error>

Calls contract living under a key, with supplied args.

source

pub fn call_versioned_contract( &mut self, contract_package_hash: ContractPackageHash, contract_version: Option<ContractVersion>, entry_point_name: String, args: RuntimeArgs ) -> Result<CLValue, Error>

Calls version of the contract living at key, invoking method with supplied args. This function also checks the args conform with the types given in the contract header.

source

pub fn take_host_buffer(&mut self) -> Option<CLValue>

If host_buffer set, clears the host_buffer and returns value, else None

Trait Implementations§

source§

impl<'a, R> Externals for Runtime<'a, R>where R: StateReader<Key, StoredValue>, R::Error: Into<Error>,

source§

fn invoke_index( &mut self, index: usize, args: RuntimeArgs<'_> ) -> Result<Option<RuntimeValue>, Trap>

Perform invoke of a host function by specified index.

Auto Trait Implementations§

§

impl<'a, R> !RefUnwindSafe for Runtime<'a, R>

§

impl<'a, R> !Send for Runtime<'a, R>

§

impl<'a, R> !Sync for Runtime<'a, R>

§

impl<'a, R> Unpin for Runtime<'a, R>

§

impl<'a, R> !UnwindSafe for Runtime<'a, R>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for Twhere T: Any,

§

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.
§

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.
§

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.
§

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> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere 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> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for Twhere 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 Twhere 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.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more