stellar-multicall 1.0.3

Multicall contract, responsible for executing multiple contract calls in a single transaction.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use stellar_axelar_std::{Env, Val, Vec};

use crate::types::FunctionCall;

//#[contractclient(name = "MulticallClient")]
pub trait MulticallInterface {
    /// Executes an arbitrary list of contract calls and returns the results of all the calls.
    ///
    /// # Arguments
    /// * `function_calls` - A list of params containing the contract address, function name and arguments for each contract call.
    ///
    /// # Returns
    /// - `Ok(Vec<Val>)`: Returns a vector with the return data of each function call
    ///
    /// # Errors:
    /// - Propagates any error that occurs during the execution of the contract calls.
    fn multicall(env: &Env, function_calls: Vec<FunctionCall>) -> Vec<Val>;
}