pub struct InstallCodeBuilder<'agent, 'canister: 'agent> { /* private fields */ }Expand description
A builder for an install_code call.
Implementations§
Source§impl<'agent, 'canister: 'agent> InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister: 'agent> InstallCodeBuilder<'agent, 'canister>
Sourcepub fn builder(
canister: &'canister Canister<'agent>,
canister_id: &Principal,
wasm: &'canister [u8],
) -> Self
pub fn builder( canister: &'canister Canister<'agent>, canister_id: &Principal, wasm: &'canister [u8], ) -> Self
Create an InstallCode builder, which is also an AsyncCall implementation.
Sourcepub fn with_arg<Argument: CandidType>(
self,
arg: Argument,
) -> InstallCodeBuilder<'agent, 'canister>
pub fn with_arg<Argument: CandidType>( self, arg: Argument, ) -> InstallCodeBuilder<'agent, 'canister>
Set the argument to the installation, which will be passed to the init method of the canister. Can be called at most once.
Sourcepub fn with_args(self, tuple: impl ArgumentEncoder) -> Self
pub fn with_args(self, tuple: impl ArgumentEncoder) -> Self
Set the argument with multiple arguments as tuple to the installation, which will be passed to the init method of the canister. Can be called at most once.
Sourcepub fn with_raw_arg(self, arg: Vec<u8>) -> InstallCodeBuilder<'agent, 'canister>
pub fn with_raw_arg(self, arg: Vec<u8>) -> InstallCodeBuilder<'agent, 'canister>
Set the argument passed in to the canister with raw bytes. Can be called at most once.
Sourcepub fn with_mode(self, mode: CanisterInstallMode) -> Self
pub fn with_mode(self, mode: CanisterInstallMode) -> Self
Pass in the CanisterInstallMode.
Sourcepub fn build(self) -> Result<impl 'agent + AsyncCall<Value = ()>, AgentError>
pub fn build(self) -> Result<impl 'agent + AsyncCall<Value = ()>, AgentError>
Create an AsyncCall implementation that, when called, will install the
canister.
Sourcepub async fn call(self) -> Result<CallResponse<()>, AgentError>
pub async fn call(self) -> Result<CallResponse<()>, AgentError>
Make a call. This is equivalent to the AsyncCall::call.
Sourcepub async fn call_and_wait(self) -> Result<(), AgentError>
pub async fn call_and_wait(self) -> Result<(), AgentError>
Make a call. This is equivalent to the AsyncCall::call_and_wait.
Trait Implementations§
Source§impl<'agent, 'canister: 'agent> AsyncCall for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister: 'agent> AsyncCall for InstallCodeBuilder<'agent, 'canister>
Source§fn call<'async_trait>(
self,
) -> Pin<Box<dyn Future<Output = Result<CallResponse<()>, AgentError>> + 'async_trait>>where
Self: 'async_trait,
fn call<'async_trait>(
self,
) -> Pin<Box<dyn Future<Output = Result<CallResponse<()>, AgentError>> + 'async_trait>>where
Self: 'async_trait,
Execute the call, but returns the
RequestId. Waiting on the request Id must be
managed by the caller using the Agent directly. Read moreSource§fn call_and_wait<'async_trait>(
self,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + 'async_trait>>where
Self: 'async_trait,
fn call_and_wait<'async_trait>(
self,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + 'async_trait>>where
Self: 'async_trait,
Execute the call, and wait for an answer using an exponential-backoff strategy. The return
type is encoded in the trait.
Source§fn and_then<'a, Out2, R, AndThen>(
self,
and_then: AndThen,
) -> AndThenAsyncCaller<'a, Self::Value, Out2, Self, R, AndThen>
fn and_then<'a, Out2, R, AndThen>( self, and_then: AndThen, ) -> AndThenAsyncCaller<'a, Self::Value, Out2, Self, R, AndThen>
Apply a transformation function after the call has been successful. The transformation
is applied with the result. Read more
Source§fn map<'a, Out, Map>(
self,
map: Map,
) -> MappedAsyncCaller<'a, Self::Value, Out, Self, Map>
fn map<'a, Out, Map>( self, map: Map, ) -> MappedAsyncCaller<'a, Self::Value, Out, Self, Map>
Apply a transformation function after the call has been successful. Equivalent to
.and_then(|x| async { map(x) }).Source§impl<'agent, 'canister: 'agent> Debug for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister: 'agent> Debug for InstallCodeBuilder<'agent, 'canister>
Source§impl<'agent, 'canister: 'agent> IntoFuture for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister: 'agent> IntoFuture for InstallCodeBuilder<'agent, 'canister>
Source§type IntoFuture = Pin<Box<dyn Future<Output = Result<(), AgentError>> + 'agent>>
type IntoFuture = Pin<Box<dyn Future<Output = Result<(), AgentError>> + 'agent>>
Which kind of future are we turning this into?
Source§fn into_future(self) -> Self::IntoFuture
fn into_future(self) -> Self::IntoFuture
Creates a future from a value. Read more
Auto Trait Implementations§
impl<'agent, 'canister> Freeze for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister> !RefUnwindSafe for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister> Send for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister> Sync for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister> Unpin for InstallCodeBuilder<'agent, 'canister>
impl<'agent, 'canister> !UnwindSafe for InstallCodeBuilder<'agent, 'canister>
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