Struct abstract_boot::Abstract
source · pub struct Abstract<Chain: BootEnvironment> {
pub chain: Chain,
pub version: Version,
pub ans_host: AnsHost<Chain>,
pub version_control: VersionControl<Chain>,
pub account_factory: AccountFactory<Chain>,
pub module_factory: ModuleFactory<Chain>,
}Fields§
§chain: Chain§version: Version§ans_host: AnsHost<Chain>§version_control: VersionControl<Chain>§account_factory: AccountFactory<Chain>§module_factory: ModuleFactory<Chain>Implementations§
source§impl<Chain: BootEnvironment> Abstract<Chain>
impl<Chain: BootEnvironment> Abstract<Chain>
pub fn new(chain: Chain, version: Version) -> Self
pub fn upload( &mut self, account: &mut AbstractAccount<Chain> ) -> Result<(), AbstractBootError>
pub fn instantiate(&mut self) -> Result<(), AbstractBootError>
pub fn deploy( &mut self, account: &mut AbstractAccount<Chain> ) -> Result<(), AbstractBootError>
pub fn contracts(&self) -> Vec<&Contract<Chain>>
Trait Implementations§
source§impl<Chain: BootEnvironment> Deploy<Chain> for Abstract<Chain>
impl<Chain: BootEnvironment> Deploy<Chain> for Abstract<Chain>
type Error = BootError
§type DeployData = Version
type DeployData = Version
Data required to deploy the application.
source§fn deploy_on(chain: Chain, version: Version) -> Result<Self, BootError>
fn deploy_on(chain: Chain, version: Version) -> Result<Self, BootError>
Deploy the application to the chain.
source§fn load_from(chain: Chain) -> Result<Self, Self::Error>
fn load_from(chain: Chain) -> Result<Self, Self::Error>
Load the application from the chain, assuming it has already been deployed.
This either loads contract addresses from the chain state manually or constructs the
boot contract wrappers that were used to deploy the application with the same name.