pub trait CallValueApiImpl:
ErrorApiImpl
+ ManagedTypeApiImpl
+ Sized {
// Required methods
fn check_not_payable(&self);
fn load_egld_value(&self, dest_handle: Self::BigIntHandle);
fn load_all_esdt_transfers(&self, dest_handle: Self::ManagedBufferHandle);
fn esdt_num_transfers(&self) -> usize;
}
Required Methods§
fn check_not_payable(&self)
Sourcefn load_egld_value(&self, dest_handle: Self::BigIntHandle)
fn load_egld_value(&self, dest_handle: Self::BigIntHandle)
Retrieves the EGLD call value from the VM. Will return 0 in case of an ESDT transfer (cannot have both EGLD and ESDT transfer simultaneously).
Sourcefn load_all_esdt_transfers(&self, dest_handle: Self::ManagedBufferHandle)
fn load_all_esdt_transfers(&self, dest_handle: Self::ManagedBufferHandle)
Loads all ESDT call values into a managed vec. Overwrites destination.
Sourcefn esdt_num_transfers(&self) -> usize
fn esdt_num_transfers(&self) -> usize
Gets the total number of ESDT transfers (Fungible/SFT/NFT).
It is redundant, since the number can also be retrieved from load_all_esdt_transfers
,
but it is easier and cheaper to call when the content of those transfers is of no interest.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.