WalletStore

Trait WalletStore 

Source
pub trait WalletStore {
Show 22 methods // Required methods fn get_master_sk(&self) -> &SecretKey; fn standard_coins(&self) -> Arc<Mutex<Vec<CoinRecord>>>; fn cat_coins(&self) -> Arc<Mutex<Vec<CatCoinRecord>>>; fn secret_key_store(&self) -> &SecretKeyStore; fn current_index(&self) -> u32; fn next_index(&self) -> u32; fn get_confirmed_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_unconfirmed_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_pending_change_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn populate_secret_key_for_puzzle_hash<'life0, 'life1, 'async_trait>( &'life0 self, puz_hash: &'life1 Bytes32, ) -> Pin<Box<dyn Future<Output = Result<Bytes48, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn add_puzzle_hash_and_keys<'life0, 'async_trait>( &'life0 self, puzzle_hash: Bytes32, keys: (Bytes32, Bytes48), ) -> Pin<Box<dyn Future<Output = Option<(Bytes32, Bytes48)>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn secret_key_for_public_key<'life0, 'life1, 'async_trait>( &'life0 self, public_key: &'life1 Bytes48, ) -> Pin<Box<dyn Future<Output = Result<SecretKey, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; // Provided methods fn get_max_send_amount<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait { ... } fn get_spendable_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait { ... } fn get_puzzle_hashes<'life0, 'async_trait>( &'life0 self, start: u32, count: u32, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes32>, Error>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait { ... } fn wallet_sk(&self, index: u32, hardened: bool) -> Result<SecretKey, Error> { ... } fn get_derivation_record_at_index<'life0, 'async_trait>( &'life0 self, index: u32, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<DerivationRecord, Error>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait { ... } fn get_unused_derivation_record<'life0, 'async_trait>( &'life0 self, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<DerivationRecord, Error>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait { ... } fn get_derivation_record<'life0, 'async_trait>( &'life0 self, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<DerivationRecord, Error>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait { ... } fn select_coins<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, amount: u64, exclude: Option<&'life1 [Coin]>, min_coin_amount: Option<u64>, max_coin_amount: u64, exclude_coin_amounts: Option<&'life2 [u64]>, ) -> Pin<Box<dyn Future<Output = Result<HashSet<Coin>, Error>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait { ... } fn populate_secret_keys_for_coin_spends<'life0, 'life1, 'async_trait>( &'life0 self, coin_spends: &'life1 [CoinSpend], ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn mapping_function<'a, F>( &'a self, public_key: &'a Bytes48, ) -> Box<dyn Future<Output = Result<SecretKey, Error>> + Send + 'a> { ... }
}

Required Methods§

Source

fn get_master_sk(&self) -> &SecretKey

Source

fn standard_coins(&self) -> Arc<Mutex<Vec<CoinRecord>>>

Source

fn cat_coins(&self) -> Arc<Mutex<Vec<CatCoinRecord>>>

Source

fn secret_key_store(&self) -> &SecretKeyStore

Source

fn current_index(&self) -> u32

Source

fn next_index(&self) -> u32

Source

fn get_confirmed_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn get_unconfirmed_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn get_pending_change_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn populate_secret_key_for_puzzle_hash<'life0, 'life1, 'async_trait>( &'life0 self, puz_hash: &'life1 Bytes32, ) -> Pin<Box<dyn Future<Output = Result<Bytes48, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn add_puzzle_hash_and_keys<'life0, 'async_trait>( &'life0 self, puzzle_hash: Bytes32, keys: (Bytes32, Bytes48), ) -> Pin<Box<dyn Future<Output = Option<(Bytes32, Bytes48)>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn secret_key_for_public_key<'life0, 'life1, 'async_trait>( &'life0 self, public_key: &'life1 Bytes48, ) -> Pin<Box<dyn Future<Output = Result<SecretKey, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Provided Methods§

Source

fn get_max_send_amount<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Source

fn get_spendable_balance<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = u128> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Source

fn get_puzzle_hashes<'life0, 'async_trait>( &'life0 self, start: u32, count: u32, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes32>, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Source

fn wallet_sk(&self, index: u32, hardened: bool) -> Result<SecretKey, Error>

Source

fn get_derivation_record_at_index<'life0, 'async_trait>( &'life0 self, index: u32, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<DerivationRecord, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Source

fn get_unused_derivation_record<'life0, 'async_trait>( &'life0 self, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<DerivationRecord, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Source

fn get_derivation_record<'life0, 'async_trait>( &'life0 self, hardened: bool, ) -> Pin<Box<dyn Future<Output = Result<DerivationRecord, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Source

fn select_coins<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, amount: u64, exclude: Option<&'life1 [Coin]>, min_coin_amount: Option<u64>, max_coin_amount: u64, exclude_coin_amounts: Option<&'life2 [u64]>, ) -> Pin<Box<dyn Future<Output = Result<HashSet<Coin>, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn populate_secret_keys_for_coin_spends<'life0, 'life1, 'async_trait>( &'life0 self, coin_spends: &'life1 [CoinSpend], ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn mapping_function<'a, F>( &'a self, public_key: &'a Bytes48, ) -> Box<dyn Future<Output = Result<SecretKey, Error>> + Send + 'a>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§