Struct dharitri_chain_vm::tx_execution::BlockchainVMRef
source · pub struct BlockchainVMRef(/* private fields */);Implementations§
source§impl BlockchainVMRef
impl BlockchainVMRef
pub fn execute_sc_query_lambda<F>( &self, tx_input: TxInput, state: &mut Shareable<BlockchainState>, f: F ) -> TxResultwhere F: FnOnce(),
pub fn execute_in_debugger<F>( &self, tx_input: TxInput, state: &mut Shareable<BlockchainState>, f: F ) -> (TxResult, BlockchainUpdate)where F: FnOnce(),
pub fn execute_builtin_function_or_default<F>( &self, tx_input: TxInput, tx_cache: TxCache, f: F ) -> (TxResult, BlockchainUpdate)where F: FnOnce(),
pub fn execute_sc_call_lambda<F>( &self, tx_input: TxInput, state: &mut Shareable<BlockchainState>, f: F ) -> TxResultwhere F: FnOnce(),
pub fn execute_async_call_and_callback( &self, async_data: AsyncCallTxData, state: &mut Shareable<BlockchainState> ) -> (TxResult, TxResult)
pub fn sc_call_with_async_and_callback<F>( &self, tx_input: TxInput, state: &mut Shareable<BlockchainState>, f: F ) -> TxResultwhere F: FnOnce(),
pub fn execute_promise_call_and_callback( &self, address: &VMAddress, promise: &Promise, state: &mut Shareable<BlockchainState> ) -> (TxResult, TxResult)
source§impl BlockchainVMRef
impl BlockchainVMRef
sourcepub fn execute_tx_context(&self, tx_context: TxContext) -> TxContext
pub fn execute_tx_context(&self, tx_context: TxContext) -> TxContext
Runs contract code using the auto-generated function selector. The endpoint name is taken from the tx context. Catches and wraps any panics thrown in the contract.
pub fn get_contract_instance(&self, tx_context: &TxContext) -> Box<dyn Instance>
source§impl BlockchainVMRef
impl BlockchainVMRef
sourcepub fn default_execution<F>(
&self,
tx_input: TxInput,
tx_cache: TxCache,
f: F
) -> (TxResult, BlockchainUpdate)where
F: FnOnce(),
pub fn default_execution<F>( &self, tx_input: TxInput, tx_cache: TxCache, f: F ) -> (TxResult, BlockchainUpdate)where F: FnOnce(),
Executes without builtin functions, directly on the contract or the given lambda closure.
pub fn deploy_contract<F>( &self, tx_input: TxInput, contract_path: Vec<u8>, tx_cache: TxCache, f: F ) -> (TxResult, VMAddress, BlockchainUpdate)where F: FnOnce(),
Trait Implementations§
source§impl Clone for BlockchainVMRef
impl Clone for BlockchainVMRef
source§fn clone(&self) -> BlockchainVMRef
fn clone(&self) -> BlockchainVMRef
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for BlockchainVMRef
impl Send for BlockchainVMRef
impl Sync for BlockchainVMRef
impl Unpin for BlockchainVMRef
impl !UnwindSafe for BlockchainVMRef
Blanket Implementations§
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