Skip to main content

CandidCallExt

Trait CandidCallExt 

Source
pub trait CandidCallExt {
    // Required methods
    fn update_candid<T, A>(
        &self,
        canister_id: Principal,
        method: &str,
        args: A,
    ) -> Result<T, CandidCallError>
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
    fn update_candid_or_panic<T, A>(
        &self,
        canister_id: Principal,
        method: &str,
        args: A,
    ) -> T
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
    fn update_candid_as<T, A>(
        &self,
        canister_id: Principal,
        caller: Principal,
        method: &str,
        args: A,
    ) -> Result<T, CandidCallError>
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
    fn update_candid_as_or_panic<T, A>(
        &self,
        canister_id: Principal,
        caller: Principal,
        method: &str,
        args: A,
    ) -> T
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
    fn query_candid<T, A>(
        &self,
        canister_id: Principal,
        method: &str,
        args: A,
    ) -> Result<T, CandidCallError>
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
    fn query_candid_or_panic<T, A>(
        &self,
        canister_id: Principal,
        method: &str,
        args: A,
    ) -> T
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
    fn query_candid_as<T, A>(
        &self,
        canister_id: Principal,
        caller: Principal,
        method: &str,
        args: A,
    ) -> Result<T, CandidCallError>
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
    fn query_candid_as_or_panic<T, A>(
        &self,
        canister_id: Principal,
        caller: Principal,
        method: &str,
        args: A,
    ) -> T
       where T: CandidType + DeserializeOwned,
             A: ArgumentEncoder;
}
Expand description

Typed Candid calls with contextual encoding, rejection, and decoding errors.

Required Methods§

Source

fn update_candid<T, A>( &self, canister_id: Principal, method: &str, args: A, ) -> Result<T, CandidCallError>

Encode and execute an anonymous update call, then decode its result.

Source

fn update_candid_or_panic<T, A>( &self, canister_id: Principal, method: &str, args: A, ) -> T

Execute update_candid, panicking on harness errors.

Source

fn update_candid_as<T, A>( &self, canister_id: Principal, caller: Principal, method: &str, args: A, ) -> Result<T, CandidCallError>

Encode and execute an update call as an explicit caller.

Source

fn update_candid_as_or_panic<T, A>( &self, canister_id: Principal, caller: Principal, method: &str, args: A, ) -> T

Execute update_candid_as, panicking on harness errors.

Source

fn query_candid<T, A>( &self, canister_id: Principal, method: &str, args: A, ) -> Result<T, CandidCallError>

Encode and execute an anonymous query call, then decode its result.

Source

fn query_candid_or_panic<T, A>( &self, canister_id: Principal, method: &str, args: A, ) -> T

Execute query_candid, panicking on harness errors.

Source

fn query_candid_as<T, A>( &self, canister_id: Principal, caller: Principal, method: &str, args: A, ) -> Result<T, CandidCallError>

Encode and execute a query call as an explicit caller.

Source

fn query_candid_as_or_panic<T, A>( &self, canister_id: Principal, caller: Principal, method: &str, args: A, ) -> T

Execute query_candid_as, panicking on harness errors.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§