Struct abstract_client::AccountBuilder
source · pub struct AccountBuilder<'a, Chain: CwEnv> { /* private fields */ }
Expand description
A builder for creating Accounts
.
Get the builder from the AbstractClient::account_builder
and create the account with the build
method.
use abstract_client::{AbstractClient, Account};
let client = AbstractClient::new(chain)?;
let account: Account<MockBech32> = client.account_builder()
.name("alice")
// other account configuration
.build()?;
Implementations§
source§impl<'a, Chain: CwEnv> AccountBuilder<'a, Chain>
impl<'a, Chain: CwEnv> AccountBuilder<'a, Chain>
sourcepub fn name(&mut self, name: impl Into<String>) -> &mut Self
pub fn name(&mut self, name: impl Into<String>) -> &mut Self
Username for the account Defaults to “Default Abstract Account”
sourcepub fn description(&mut self, description: impl Into<String>) -> &mut Self
pub fn description(&mut self, description: impl Into<String>) -> &mut Self
Description for the account
sourcepub fn link(&mut self, link: impl Into<String>) -> &mut Self
pub fn link(&mut self, link: impl Into<String>) -> &mut Self
http(s) or ipfs link for the account
sourcepub fn namespace(&mut self, namespace: Namespace) -> &mut Self
pub fn namespace(&mut self, namespace: Namespace) -> &mut Self
Unique namespace for the account Setting this will claim the namespace for the account on construction.
sourcepub fn base_asset(&mut self, base_asset: AssetEntry) -> &mut Self
pub fn base_asset(&mut self, base_asset: AssetEntry) -> &mut Self
Base Asset for the account
sourcepub fn fetch_if_namespace_claimed(&mut self, value: bool) -> &mut Self
pub fn fetch_if_namespace_claimed(&mut self, value: bool) -> &mut Self
Try to fetch the account before creating it if the namespace is already claimed.
Defaults to true
.
sourcepub fn install_on_sub_account(&mut self, value: bool) -> &mut Self
pub fn install_on_sub_account(&mut self, value: bool) -> &mut Self
Install modules on a new sub-account instead of current account.
Defaults to true
sourcepub fn sub_account(&mut self, owner_account: &'a Account<Chain>) -> &mut Self
pub fn sub_account(&mut self, owner_account: &'a Account<Chain>) -> &mut Self
Create sub-account instead
sourcepub fn ownership(&mut self, ownership: GovernanceDetails<String>) -> &mut Self
pub fn ownership(&mut self, ownership: GovernanceDetails<String>) -> &mut Self
Governance of the account.
Defaults to the GovernanceDetails::Monarchy
variant, owned by the sender
sourcepub fn install_adapter<M: InstallConfig<InitMsg = Empty>>(
&mut self
) -> Result<&mut Self, AbstractClientError>
pub fn install_adapter<M: InstallConfig<InitMsg = Empty>>( &mut self ) -> Result<&mut Self, AbstractClientError>
Install an adapter on current account.
sourcepub fn install_app<M: InstallConfig>(
&mut self,
configuration: &M::InitMsg
) -> Result<&mut Self, AbstractClientError>
pub fn install_app<M: InstallConfig>( &mut self, configuration: &M::InitMsg ) -> Result<&mut Self, AbstractClientError>
Install an application on current account.
sourcepub fn install_app_with_dependencies<M: DependencyCreation + InstallConfig>(
&mut self,
module_configuration: &M::InitMsg,
dependencies_config: M::DependenciesConfig
) -> Result<&mut Self, AbstractClientError>
pub fn install_app_with_dependencies<M: DependencyCreation + InstallConfig>( &mut self, module_configuration: &M::InitMsg, dependencies_config: M::DependenciesConfig ) -> Result<&mut Self, AbstractClientError>
Install an application with dependencies on current account.
sourcepub fn auto_fund_assert<F: Fn(&[Coin]) -> bool + 'static>(
&mut self,
f: F
) -> &mut Self
pub fn auto_fund_assert<F: Fn(&[Coin]) -> bool + 'static>( &mut self, f: F ) -> &mut Self
Enables automatically paying for module instantiations and namespace registration.
The provided function will be called with the required funds. If the function returns false
,
the account creation will fail.
sourcepub fn auto_fund(&mut self) -> &mut Self
pub fn auto_fund(&mut self) -> &mut Self
Enables automatically paying for module instantiations and namespace registration.
Use auto_fund_assert
to add limits to the auto fund mode.
sourcepub fn funds(
&mut self,
funds: &[Coin]
) -> Result<&mut Self, AbstractClientError>
pub fn funds( &mut self, funds: &[Coin] ) -> Result<&mut Self, AbstractClientError>
Add funds to the account creation Can’t be used in pair with auto fund mode
sourcepub fn expected_account_id(&mut self, local_account_id: u32) -> &mut Self
pub fn expected_account_id(&mut self, local_account_id: u32) -> &mut Self
Assign expected local account_id on creation. The tx will error if this does not match the account-id at runtime. Useful for instantiate2 address prediction.
Auto Trait Implementations§
impl<'a, Chain> Freeze for AccountBuilder<'a, Chain>
impl<'a, Chain> !RefUnwindSafe for AccountBuilder<'a, Chain>
impl<'a, Chain> !Send for AccountBuilder<'a, Chain>
impl<'a, Chain> !Sync for AccountBuilder<'a, Chain>
impl<'a, Chain> Unpin for AccountBuilder<'a, Chain>
impl<'a, Chain> !UnwindSafe for AccountBuilder<'a, Chain>
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> 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