pub struct Executor<'a, T: Execution> { /* private fields */ }Expand description
API for executing AccountActions on the Account.
Group your actions together in a single execute call if possible.
Executing CosmosMsg on the account is possible by creating an AccountAction.
§Example
use abstract_sdk::prelude::*;
let executor: Executor<MockModule> = module.executor(deps.as_ref());Implementations§
Source§impl<'a, T: Execution> Executor<'a, T>
impl<'a, T: Execution> Executor<'a, T>
Sourcepub fn execute(
&self,
actions: impl IntoIterator<Item = impl Into<AccountAction>>,
) -> AbstractSdkResult<ExecutorMsg>
pub fn execute( &self, actions: impl IntoIterator<Item = impl Into<AccountAction>>, ) -> AbstractSdkResult<ExecutorMsg>
Execute the msgs on the Account. These messages will be executed on the account contract and the sending module must be whitelisted.
Sourcepub fn execute_with_funds(
&self,
actions: impl IntoIterator<Item = impl Into<AccountAction>>,
funds: Vec<Coin>,
) -> AbstractSdkResult<ExecutorMsg>
pub fn execute_with_funds( &self, actions: impl IntoIterator<Item = impl Into<AccountAction>>, funds: Vec<Coin>, ) -> AbstractSdkResult<ExecutorMsg>
Execute the msgs on the Account. These messages will be executed on the account contract and the sending module must be whitelisted. Funds attached from sending module to account
Sourcepub fn execute_with_reply(
&self,
actions: impl IntoIterator<Item = impl Into<AccountAction>>,
reply_on: ReplyOn,
id: u64,
) -> AbstractSdkResult<SubMsg>
pub fn execute_with_reply( &self, actions: impl IntoIterator<Item = impl Into<AccountAction>>, reply_on: ReplyOn, id: u64, ) -> AbstractSdkResult<SubMsg>
Execute the msgs on the Account.
These messages will be executed on the account contract and the sending module must be whitelisted.
The execution will be executed in a submessage and the reply will be sent to the provided reply_on.
Sourcepub fn execute_with_reply_and_data(
&self,
actions: CosmosMsg,
reply_on: ReplyOn,
id: u64,
) -> AbstractSdkResult<SubMsg>
pub fn execute_with_reply_and_data( &self, actions: CosmosMsg, reply_on: ReplyOn, id: u64, ) -> AbstractSdkResult<SubMsg>
Execute a single msg on the Account. This message will be executed on the account contract. Any data returned from the execution will be forwarded to the account’s response through a reply. The resulting data should be available in the reply of the specified ID.
Sourcepub fn execute_with_response(
&self,
actions: impl IntoIterator<Item = impl Into<AccountAction>>,
action: &str,
) -> AbstractSdkResult<Response>
pub fn execute_with_response( &self, actions: impl IntoIterator<Item = impl Into<AccountAction>>, action: &str, ) -> AbstractSdkResult<Response>
Execute the msgs on the Account. These messages will be executed on the account contract and the sending module must be whitelisted. Return a “standard” response for the executed messages. (with the provided action).
Trait Implementations§
Auto Trait Implementations§
impl<'a, T> Freeze for Executor<'a, T>
impl<'a, T> !RefUnwindSafe for Executor<'a, T>
impl<'a, T> !Send for Executor<'a, T>
impl<'a, T> !Sync for Executor<'a, T>
impl<'a, T> Unpin for Executor<'a, T>
impl<'a, T> !UnwindSafe for Executor<'a, T>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more