pub trait TransactionBuilder: Default + Sized {
    type MetadataParams: Serialize + Clone;
    type Metadata: DeserializeOwned + Sized + Send + Sync + 'static;

    // Required methods
    fn transfer(
        &self,
        address: &Address,
        amount: u128
    ) -> Result<Self::MetadataParams>;
    fn method_call(
        &self,
        contract: &str,
        method: &str,
        values: &[String],
        amount: u128
    ) -> Result<Self::MetadataParams>;
    fn deploy_contract(
        &self,
        contract_binary: Vec<u8>
    ) -> Result<Self::MetadataParams>;
    fn create_and_sign(
        &self,
        config: &BlockchainConfig,
        metadata_params: &Self::MetadataParams,
        metdata: &Self::Metadata,
        secret_key: &SecretKey
    ) -> Vec<u8>;
}

Required Associated Types§

Required Methods§

source

fn transfer( &self, address: &Address, amount: u128 ) -> Result<Self::MetadataParams>

source

fn method_call( &self, contract: &str, method: &str, values: &[String], amount: u128 ) -> Result<Self::MetadataParams>

source

fn deploy_contract( &self, contract_binary: Vec<u8> ) -> Result<Self::MetadataParams>

source

fn create_and_sign( &self, config: &BlockchainConfig, metadata_params: &Self::MetadataParams, metdata: &Self::Metadata, secret_key: &SecretKey ) -> Vec<u8>

Implementors§