pub struct Runtime { /* private fields */ }
Expand description
A Runtime for state transition. Instants of runtime share the same execution logic, but differ in configurations such as data cache for smart contract and memory limit to WASM execution.
Implementations§
Source§impl Runtime
impl Runtime
pub fn new() -> Self
Sourcepub fn set_smart_contract_cache(self, sc_cache: Cache) -> Self
pub fn set_smart_contract_cache(self, sc_cache: Cache) -> Self
specify smart contract cache to improve performance for contract code compilation.
Sourcepub fn set_smart_contract_memory_limit(self, memory_limit: usize) -> Self
pub fn set_smart_contract_memory_limit(self, memory_limit: usize) -> Self
specify the limit to wasm linear memory in contract execution. It is a tunable maximum guest memory limit that is made available to the VM
Sourcepub fn transition<S: WorldStateStorage + Send + Sync + Clone + 'static>(
&self,
ws: WorldState<S>,
tx: Transaction,
bd: BlockchainParams,
) -> TransitionResult<S>
pub fn transition<S: WorldStateStorage + Send + Sync + Clone + 'static>( &self, ws: WorldState<S>, tx: Transaction, bd: BlockchainParams, ) -> TransitionResult<S>
state transition of world state (WS) from transaction (tx) and blockchain data (bd) as inputs.
Sourcepub fn view<S: WorldStateStorage + Send + Sync + Clone + 'static>(
&self,
ws: WorldState<S>,
gas_limit: u64,
target: PublicAddress,
method: String,
arguments: Option<Vec<Vec<u8>>>,
) -> (CommandReceipt, Option<TransitionError>)
pub fn view<S: WorldStateStorage + Send + Sync + Clone + 'static>( &self, ws: WorldState<S>, gas_limit: u64, target: PublicAddress, method: String, arguments: Option<Vec<Vec<u8>>>, ) -> (CommandReceipt, Option<TransitionError>)
view performs view call to a target contract
Auto Trait Implementations§
impl Freeze for Runtime
impl RefUnwindSafe for Runtime
impl Send for Runtime
impl Sync for Runtime
impl Unpin for Runtime
impl UnwindSafe for Runtime
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Upcastable for T
impl<T> Upcastable for T
Source§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
Source§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref