ic-canister-kit 0.3.19

An ic canister package
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use super::CallError;
use crate::identity::CanisterId;

/// 调用罐子

pub async fn call_canister<
    T: candid::utils::ArgumentEncoder,
    R: for<'a> candid::utils::ArgumentDecoder<'a>,
>(
    canister_id: CanisterId,
    method: &str,
    args: T,
) -> Result<R, CallError> {
    ic_cdk::println!("call canister: {} -> {}", canister_id.to_text(), method);
    ic_cdk::call(canister_id, &method, args).await
}