multiversx_chain_vm::vm_hooks

Trait VMHooksBlockchain

Source
pub trait VMHooksBlockchain: VMHooksHandlerSource {
Show 29 methods // Provided methods fn is_contract_address(&self, address_bytes: &[u8]) -> bool { ... } fn managed_caller(&self, dest_handle: RawHandle) { ... } fn managed_sc_address(&self, dest_handle: RawHandle) { ... } fn managed_owner_address(&self, dest_handle: RawHandle) { ... } fn get_shard_of_address(&self, address_bytes: &[u8]) -> i32 { ... } fn is_smart_contract(&self, address_bytes: &[u8]) -> bool { ... } fn load_balance(&self, address_bytes: &[u8], dest: RawHandle) { ... } fn get_tx_hash(&self, dest: RawHandle) { ... } fn get_gas_left(&self) -> u64 { ... } fn get_block_timestamp(&self) -> u64 { ... } fn get_block_nonce(&self) -> u64 { ... } fn get_block_round(&self) -> u64 { ... } fn get_block_epoch(&self) -> u64 { ... } fn get_block_random_seed(&self, dest: RawHandle) { ... } fn get_prev_block_timestamp(&self) -> u64 { ... } fn get_prev_block_nonce(&self) -> u64 { ... } fn get_prev_block_round(&self) -> u64 { ... } fn get_prev_block_epoch(&self) -> u64 { ... } fn get_prev_block_random_seed(&self, dest: RawHandle) { ... } fn get_current_esdt_nft_nonce( &self, address_bytes: &[u8], token_id_bytes: &[u8], ) -> u64 { ... } fn big_int_get_esdt_external_balance( &self, address_bytes: &[u8], token_id_bytes: &[u8], nonce: u64, dest: RawHandle, ) { ... } fn managed_get_code_metadata( &self, address_handle: i32, response_handle: i32, ) { ... } fn managed_is_builtin_function(&self, function_name_handle: i32) -> bool { ... } fn managed_get_esdt_token_data( &self, address_handle: RawHandle, token_id_handle: RawHandle, nonce: u64, value_handle: RawHandle, properties_handle: RawHandle, hash_handle: RawHandle, name_handle: RawHandle, attributes_handle: RawHandle, creator_handle: RawHandle, royalties_handle: RawHandle, uris_handle: RawHandle, ) { ... } fn managed_get_back_transfers( &self, esdt_transfer_value_handle: RawHandle, call_value_handle: RawHandle, ) { ... } fn check_esdt_frozen( &self, address_handle: RawHandle, token_id_handle: RawHandle, _nonce: u64, ) -> bool { ... } fn get_esdt_local_roles_bits(&self, token_id_handle: RawHandle) -> u64 { ... } fn set_esdt_data_values( &self, esdt_data: &EsdtData, instance: &EsdtInstance, value_handle: RawHandle, properties_handle: RawHandle, hash_handle: RawHandle, name_handle: RawHandle, attributes_handle: RawHandle, creator_handle: RawHandle, royalties_handle: RawHandle, uris_handle: RawHandle, ) { ... } fn reset_esdt_data_values( &self, value_handle: RawHandle, properties_handle: RawHandle, hash_handle: RawHandle, name_handle: RawHandle, attributes_handle: RawHandle, creator_handle: RawHandle, royalties_handle: RawHandle, uris_handle: RawHandle, ) { ... }
}

Provided Methods§

Source

fn is_contract_address(&self, address_bytes: &[u8]) -> bool

Source

fn managed_caller(&self, dest_handle: RawHandle)

Source

fn managed_sc_address(&self, dest_handle: RawHandle)

Source

fn managed_owner_address(&self, dest_handle: RawHandle)

Source

fn get_shard_of_address(&self, address_bytes: &[u8]) -> i32

Source

fn is_smart_contract(&self, address_bytes: &[u8]) -> bool

Source

fn load_balance(&self, address_bytes: &[u8], dest: RawHandle)

Source

fn get_tx_hash(&self, dest: RawHandle)

Source

fn get_gas_left(&self) -> u64

Source

fn get_block_timestamp(&self) -> u64

Source

fn get_block_nonce(&self) -> u64

Source

fn get_block_round(&self) -> u64

Source

fn get_block_epoch(&self) -> u64

Source

fn get_block_random_seed(&self, dest: RawHandle)

Source

fn get_prev_block_timestamp(&self) -> u64

Source

fn get_prev_block_nonce(&self) -> u64

Source

fn get_prev_block_round(&self) -> u64

Source

fn get_prev_block_epoch(&self) -> u64

Source

fn get_prev_block_random_seed(&self, dest: RawHandle)

Source

fn get_current_esdt_nft_nonce( &self, address_bytes: &[u8], token_id_bytes: &[u8], ) -> u64

Source

fn big_int_get_esdt_external_balance( &self, address_bytes: &[u8], token_id_bytes: &[u8], nonce: u64, dest: RawHandle, )

Source

fn managed_get_code_metadata(&self, address_handle: i32, response_handle: i32)

Source

fn managed_is_builtin_function(&self, function_name_handle: i32) -> bool

Source

fn managed_get_esdt_token_data( &self, address_handle: RawHandle, token_id_handle: RawHandle, nonce: u64, value_handle: RawHandle, properties_handle: RawHandle, hash_handle: RawHandle, name_handle: RawHandle, attributes_handle: RawHandle, creator_handle: RawHandle, royalties_handle: RawHandle, uris_handle: RawHandle, )

Source

fn managed_get_back_transfers( &self, esdt_transfer_value_handle: RawHandle, call_value_handle: RawHandle, )

Source

fn check_esdt_frozen( &self, address_handle: RawHandle, token_id_handle: RawHandle, _nonce: u64, ) -> bool

Source

fn get_esdt_local_roles_bits(&self, token_id_handle: RawHandle) -> u64

Source

fn set_esdt_data_values( &self, esdt_data: &EsdtData, instance: &EsdtInstance, value_handle: RawHandle, properties_handle: RawHandle, hash_handle: RawHandle, name_handle: RawHandle, attributes_handle: RawHandle, creator_handle: RawHandle, royalties_handle: RawHandle, uris_handle: RawHandle, )

Source

fn reset_esdt_data_values( &self, value_handle: RawHandle, properties_handle: RawHandle, hash_handle: RawHandle, name_handle: RawHandle, attributes_handle: RawHandle, creator_handle: RawHandle, royalties_handle: RawHandle, uris_handle: RawHandle, )

Implementors§