Struct 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>

Source

pub fn name(&mut self, name: impl Into<String>) -> &mut Self

Username for the account Defaults to “Default Abstract Account”

Source

pub fn description(&mut self, description: impl Into<String>) -> &mut Self

Description for the account

http(s) or ipfs link for the account

Source

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.

Source

pub fn sub_account(&mut self, owner_account: &'a Account<Chain>) -> &mut Self

Create sub-account

Source

pub fn ownership(&mut self, ownership: GovernanceDetails<String>) -> &mut Self

Governance of the account. Defaults to the GovernanceDetails::Monarchy variant, owned by the sender

Source

pub fn install_adapter<M: InstallConfig<InitMsg = Empty>>( &mut self, ) -> &mut Self

Install an adapter on current account.

Source

pub fn install_app<M: InstallConfig>( &mut self, configuration: &M::InitMsg, ) -> &mut Self

Install an application on current account.

Source

pub fn install_standalone<M: InstallConfig>( &mut self, configuration: &M::InitMsg, ) -> &mut Self

Install an standalone on current account.

Source

pub fn install_service<M: InstallConfig>( &mut self, configuration: &M::InitMsg, ) -> &mut Self

Install an service on current account.

Source

pub fn install_app_with_dependencies<M: DependencyCreation + InstallConfig>( &mut self, module_configuration: &M::InitMsg, dependencies_config: M::DependenciesConfig, ) -> &mut Self

Install an application with dependencies on current account.

Source

pub fn install_standalone_with_dependencies<M: DependencyCreation + InstallConfig>( &mut self, module_configuration: &M::InitMsg, dependencies_config: M::DependenciesConfig, ) -> &mut Self

Install an standalone with dependencies on current account.

Source

pub fn with_modules( &mut self, install_modules: impl IntoIterator<Item = ModuleInstallConfig>, ) -> &mut Self

Install unchecked modules on current account.

Since this method allows to pass unchecked ModuleInstallConfig
calling this method should be avoided unless it’s the only way to install module, for example no InstallModule implemented for the module

Source

pub fn enable_ibc(&mut self) -> &mut Self

Enable ibc on account. This parameter ignored if installation of IbcClient already specified in install_modules.

Source

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.

Source

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.

Source

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

Source

pub fn expected_account_id(&mut self, local_account_id: u32) -> &mut Self

Assign expected local account_id on creation. It’s designed to be used in pair with crate::AbstractClient::random_account_id. The tx will error if this account id already claimed or it’s less than 2147483648. Useful for instantiate2 address prediction.

Source

pub fn build(&self) -> Result<Account<Chain>, AbstractClientError>

Builds the Account.

Auto Trait Implementations§

§

impl<'a, Chain> Freeze for AccountBuilder<'a, Chain>
where Chain: Freeze,

§

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>
where Chain: Unpin,

§

impl<'a, Chain> !UnwindSafe for AccountBuilder<'a, Chain>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<U> As for U

Source§

fn as_<T>(self) -> T
where T: CastFrom<U>,

Casts self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V