pub trait WasmRuntime {
Show 46 methods // Required methods fn allocate_buffer( &mut self, buffer: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn buffer_consume( &mut self, buffer_id: u32 ) -> Result<Vec<u8>, InvokeError<WasmRuntimeError>>; fn object_call( &mut self, receiver: Vec<u8>, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn object_call_module( &mut self, receiver: Vec<u8>, module_id: u32, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn object_call_direct( &mut self, receiver: Vec<u8>, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn blueprint_call( &mut self, package_address: Vec<u8>, blueprint_name: Vec<u8>, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn object_new( &mut self, blueprint_name: Vec<u8>, object_states: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn address_allocate( &mut self, package_address: Vec<u8>, blueprint_name: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn address_get_reservation_address( &mut self, node_id: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn globalize_object( &mut self, node_id: Vec<u8>, modules: Vec<u8>, address: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn key_value_store_new( &mut self, schema: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn key_value_store_open_entry( &mut self, node_id: Vec<u8>, key: Vec<u8>, flags: u32 ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn key_value_entry_get( &mut self, handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn key_value_entry_set( &mut self, handle: u32, data: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>; fn key_value_entry_remove( &mut self, handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn key_value_entry_close( &mut self, handle: u32 ) -> Result<(), InvokeError<WasmRuntimeError>>; fn key_value_store_remove_entry( &mut self, node_id: Vec<u8>, key: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn instance_of( &mut self, object_id: Vec<u8>, package_address: Vec<u8>, blueprint_name: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn blueprint_id( &mut self, object_id: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn get_outer_object( &mut self, component_id: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn actor_open_field( &mut self, object_handle: u32, field: u8, flags: u32 ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn field_entry_read( &mut self, handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn field_entry_write( &mut self, handle: u32, data: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>; fn field_entry_close( &mut self, handle: u32 ) -> Result<(), InvokeError<WasmRuntimeError>>; fn actor_get_node_id( &mut self, actor_ref_handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn actor_get_package_address( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn actor_get_blueprint_name( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn consume_wasm_execution_units( &mut self, n: u32 ) -> Result<(), InvokeError<WasmRuntimeError>>; fn costing_get_execution_cost_unit_limit( &mut self ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn costing_get_execution_cost_unit_price( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn costing_get_finalization_cost_unit_limit( &mut self ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn costing_get_finalization_cost_unit_price( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn costing_get_usd_price( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn costing_get_tip_percentage( &mut self ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn costing_get_fee_balance( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn actor_emit_event( &mut self, event_name: Vec<u8>, event_payload: Vec<u8>, event_flags: EventFlags ) -> Result<(), InvokeError<WasmRuntimeError>>; fn sys_log( &mut self, level: Vec<u8>, message: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>; fn sys_bech32_encode_address( &mut self, address: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn sys_get_transaction_hash( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn sys_generate_ruid( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn sys_panic( &mut self, message: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>; fn crypto_utils_bls12381_v1_verify( &mut self, message: Vec<u8>, public_key: Vec<u8>, signature: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn crypto_utils_bls12381_v1_aggregate_verify( &mut self, pub_keys_and_msgs: Vec<u8>, signatures: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn crypto_utils_bls12381_v1_fast_aggregate_verify( &mut self, message: Vec<u8>, public_keys: Vec<u8>, signatures: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>; fn crypto_utils_bls12381_g2_signature_aggregate( &mut self, signatures: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>; fn crypto_utils_keccak256_hash( &mut self, data: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>;
}
Expand description

Represents the runtime that can be invoked by Scrypto modules.

Required Methods§

source

fn allocate_buffer( &mut self, buffer: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn buffer_consume( &mut self, buffer_id: u32 ) -> Result<Vec<u8>, InvokeError<WasmRuntimeError>>

source

fn object_call( &mut self, receiver: Vec<u8>, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn object_call_module( &mut self, receiver: Vec<u8>, module_id: u32, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn object_call_direct( &mut self, receiver: Vec<u8>, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn blueprint_call( &mut self, package_address: Vec<u8>, blueprint_name: Vec<u8>, ident: Vec<u8>, args: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn object_new( &mut self, blueprint_name: Vec<u8>, object_states: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn address_allocate( &mut self, package_address: Vec<u8>, blueprint_name: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn address_get_reservation_address( &mut self, node_id: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn globalize_object( &mut self, node_id: Vec<u8>, modules: Vec<u8>, address: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn key_value_store_new( &mut self, schema: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn key_value_store_open_entry( &mut self, node_id: Vec<u8>, key: Vec<u8>, flags: u32 ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn key_value_entry_get( &mut self, handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn key_value_entry_set( &mut self, handle: u32, data: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn key_value_entry_remove( &mut self, handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn key_value_entry_close( &mut self, handle: u32 ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn key_value_store_remove_entry( &mut self, node_id: Vec<u8>, key: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn instance_of( &mut self, object_id: Vec<u8>, package_address: Vec<u8>, blueprint_name: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn blueprint_id( &mut self, object_id: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn get_outer_object( &mut self, component_id: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn actor_open_field( &mut self, object_handle: u32, field: u8, flags: u32 ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn field_entry_read( &mut self, handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn field_entry_write( &mut self, handle: u32, data: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn field_entry_close( &mut self, handle: u32 ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn actor_get_node_id( &mut self, actor_ref_handle: u32 ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn actor_get_package_address( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn actor_get_blueprint_name( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn consume_wasm_execution_units( &mut self, n: u32 ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn costing_get_execution_cost_unit_limit( &mut self ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn costing_get_execution_cost_unit_price( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn costing_get_finalization_cost_unit_limit( &mut self ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn costing_get_finalization_cost_unit_price( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn costing_get_usd_price( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn costing_get_tip_percentage( &mut self ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn costing_get_fee_balance( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn actor_emit_event( &mut self, event_name: Vec<u8>, event_payload: Vec<u8>, event_flags: EventFlags ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn sys_log( &mut self, level: Vec<u8>, message: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn sys_bech32_encode_address( &mut self, address: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn sys_get_transaction_hash( &mut self ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn sys_generate_ruid(&mut self) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn sys_panic( &mut self, message: Vec<u8> ) -> Result<(), InvokeError<WasmRuntimeError>>

source

fn crypto_utils_bls12381_v1_verify( &mut self, message: Vec<u8>, public_key: Vec<u8>, signature: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn crypto_utils_bls12381_v1_aggregate_verify( &mut self, pub_keys_and_msgs: Vec<u8>, signatures: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn crypto_utils_bls12381_v1_fast_aggregate_verify( &mut self, message: Vec<u8>, public_keys: Vec<u8>, signatures: Vec<u8> ) -> Result<u32, InvokeError<WasmRuntimeError>>

source

fn crypto_utils_bls12381_g2_signature_aggregate( &mut self, signatures: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

source

fn crypto_utils_keccak256_hash( &mut self, data: Vec<u8> ) -> Result<Buffer, InvokeError<WasmRuntimeError>>

Implementors§