Trait ic_utils::call::SyncCall

source ·
pub trait SyncCall<O>
where O: for<'de> ArgumentDecoder<'de> + Send,
{ // Required methods fn call_raw<'async_trait>( self ) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, AgentError>> + Send + 'async_trait>> where Self: 'async_trait; fn call<'async_trait>( self ) -> Pin<Box<dyn Future<Output = Result<O, AgentError>> + Send + 'async_trait>> where Self: Sized + Send + 'async_trait, O: 'async_trait; }
Expand description

A type that implements synchronous calls (ie. ‘query’ calls).

Required Methods§

source

fn call_raw<'async_trait>( self ) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, AgentError>> + Send + 'async_trait>>
where Self: 'async_trait,

Available on crate feature raw only.

Execute the call, return an array of bytes directly from the canister.

source

fn call<'async_trait>( self ) -> Pin<Box<dyn Future<Output = Result<O, AgentError>> + Send + 'async_trait>>
where Self: Sized + Send + 'async_trait, O: 'async_trait,

Execute the call, returning either the value returned by the canister, or an error returned by the Agent.

Implementors§

source§

impl<'agent, Out> SyncCall<Out> for SyncCaller<'agent, Out>
where Self: Sized, Out: 'agent + for<'de> ArgumentDecoder<'de> + Send,