Macro near_sdk_sim::call[][src]

macro_rules! call {
    ($signer:expr, $deposit: expr, $gas: expr, $contract: ident, $method:ident, $($arg:expr),*) => { ... };
    ($signer:expr, $contract: ident.$method:ident($($arg:expr),*), $deposit: expr, $gas: expr) => { ... };
    ($signer:expr, $contract: ident.$method:ident($($arg:expr),*)) => { ... };
    ($signer:expr, $contract: ident.$method:ident($($arg:expr),*), gas=$gas_or_deposit: expr) => { ... };
    ($signer:expr, $contract: ident.$method:ident($($arg:expr),*), deposit=$gas_or_deposit: expr) => { ... };
}

Makes a contract call to a ContractAccount returning a ExecutionResult.

Examples:

use near_sdk_sim::to_yocto;
// Uses default values for gas and deposit.
let res = call!(
     master_account,
     contract.ft_transfer(master_account_id.clone(), to_yocto("100").into(), None)
    );
// Equivalent to
let res = call!(
    master_account,
    contract.ft_transfer(master_account_id.clone(), to_yocto("100").into(), None),
    0,
    near_sdk_sim::DEFAULT_GAS
   );
// Can also specify either deposit or gas
let res = call!(
    master_account,
    contract.ft_transfer(master_account_id.clone(), to_yocto("100").into(), None),
    deposit = 0
   );
let res = call!(
    master_account,
    contract.ft_transfer(master_account_id.clone(), to_yocto("100").into(), None),
    gas = near_sdk_sim::DEFAULT_GAS
   );