pub struct IcRuntime { /* private fields */ }Expand description
Runtime when interacting with a canister running on the Internet Computer.
§Examples
Call the make_http_post_request endpoint on the example http_canister.
use candid::Principal;
use ic_canister_runtime::{IcRuntime, Runtime, StubRuntime};
let runtime = IcRuntime::new();
let http_request_result: String = runtime
.update_call(canister_id, "make_http_post_request", (), 0)
.await
.expect("Call to `http_canister` failed");
assert!(http_request_result.contains("Hello, World!"));
assert!(http_request_result.contains("\"X-Id\": \"42\""));Implementations§
Trait Implementations§
Source§impl Runtime for IcRuntime
impl Runtime for IcRuntime
Source§fn update_call<'life0, 'life1, 'async_trait, In, Out>(
&'life0 self,
id: Principal,
method: &'life1 str,
args: In,
cycles: u128,
) -> Pin<Box<dyn Future<Output = Result<Out, IcError>> + Send + 'async_trait>>where
In: ArgumentEncoder + Send + 'async_trait,
Out: CandidType + DeserializeOwned + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_call<'life0, 'life1, 'async_trait, In, Out>(
&'life0 self,
id: Principal,
method: &'life1 str,
args: In,
cycles: u128,
) -> Pin<Box<dyn Future<Output = Result<Out, IcError>> + Send + 'async_trait>>where
In: ArgumentEncoder + Send + 'async_trait,
Out: CandidType + DeserializeOwned + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Defines how asynchronous inter-canister update calls are made.
Source§fn query_call<'life0, 'life1, 'async_trait, In, Out>(
&'life0 self,
id: Principal,
method: &'life1 str,
args: In,
) -> Pin<Box<dyn Future<Output = Result<Out, IcError>> + Send + 'async_trait>>where
In: ArgumentEncoder + Send + 'async_trait,
Out: CandidType + DeserializeOwned + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn query_call<'life0, 'life1, 'async_trait, In, Out>(
&'life0 self,
id: Principal,
method: &'life1 str,
args: In,
) -> Pin<Box<dyn Future<Output = Result<Out, IcError>> + Send + 'async_trait>>where
In: ArgumentEncoder + Send + 'async_trait,
Out: CandidType + DeserializeOwned + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Defines how asynchronous inter-canister query calls are made.
impl Copy for IcRuntime
impl Eq for IcRuntime
impl StructuralPartialEq for IcRuntime
Auto Trait Implementations§
impl Freeze for IcRuntime
impl RefUnwindSafe for IcRuntime
impl Send for IcRuntime
impl Sync for IcRuntime
impl Unpin for IcRuntime
impl UnwindSafe for IcRuntime
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more