pub struct WalletCache<L2: Layer2Cache> {
pub id: Option<String>,
pub last_block: MiningInfo,
pub last_change: NormalIndex,
pub headers: BTreeSet<BlockInfo>,
pub tx: BTreeMap<Txid, WalletTx>,
pub utxo: BTreeSet<Outpoint>,
pub addr: BTreeMap<Keychain, BTreeSet<WalletAddr>>,
pub layer2: L2,
/* private fields */
}
Fields§
§id: Option<String>
This field is used by applications to link data with other wallet components
last_block: MiningInfo
§last_change: NormalIndex
§headers: BTreeSet<BlockInfo>
§tx: BTreeMap<Txid, WalletTx>
§utxo: BTreeSet<Outpoint>
§addr: BTreeMap<Keychain, BTreeSet<WalletAddr>>
§layer2: L2
Implementations§
Source§impl<L2: Layer2Cache> WalletCache<L2>
impl<L2: Layer2Cache> WalletCache<L2>
Source§impl<L2C: Layer2Cache> WalletCache<L2C>
impl<L2C: Layer2Cache> WalletCache<L2C>
pub fn with<I: Indexer, K, D: Descriptor<K>, L2: Layer2<Cache = L2C>>( descriptor: &WalletDescr<K, D, L2::Descr>, indexer: &I, ) -> MayError<Self, Vec<I::Error>>
pub fn update<I: Indexer, K, D: Descriptor<K>, L2: Layer2<Cache = L2C>>( &mut self, descriptor: &WalletDescr<K, D, L2::Descr>, indexer: &I, ) -> MayError<usize, Vec<I::Error>>
pub fn register_psbt(&mut self, psbt: &Psbt, meta: &PsbtMeta)
pub fn addresses_on(&self, keychain: Keychain) -> &BTreeSet<WalletAddr>
pub fn has_outpoint(&self, outpoint: Outpoint) -> bool
pub fn is_unspent(&self, outpoint: Outpoint) -> bool
pub fn outpoint_by( &self, outpoint: Outpoint, ) -> Result<(WalletUtxo, ScriptPubkey), NonWalletItem>
pub fn txos(&self) -> impl Iterator<Item = WalletUtxo> + '_
pub fn utxos(&self) -> impl Iterator<Item = WalletUtxo> + '_
Trait Implementations§
Source§impl<L2: Layer2Cache> CloneNoPersistence for WalletCache<L2>
impl<L2: Layer2Cache> CloneNoPersistence for WalletCache<L2>
fn clone_no_persistence(&self) -> Self
Source§impl<L2: Debug + Layer2Cache> Debug for WalletCache<L2>
impl<L2: Debug + Layer2Cache> Debug for WalletCache<L2>
Source§impl<L2: Layer2Cache> Drop for WalletCache<L2>
impl<L2: Layer2Cache> Drop for WalletCache<L2>
Source§impl<L2: Layer2Cache> Persisting for WalletCache<L2>
impl<L2: Layer2Cache> Persisting for WalletCache<L2>
fn persistence(&self) -> Option<&Persistence<Self>>
fn persistence_mut(&mut self) -> Option<&mut Persistence<Self>>
fn as_mut_persistence(&mut self) -> &mut Option<Persistence<Self>>
fn load( provider: impl PersistenceProvider<Self> + 'static, autosave: bool, ) -> Result<Self, PersistenceError>
fn is_persisted(&self) -> bool
fn is_dirty(&self) -> bool
fn mark_dirty(&mut self)
fn is_autosave(&self) -> bool
fn set_autosave(&mut self)
Source§fn make_persistent(
&mut self,
provider: impl PersistenceProvider<Self> + 'static,
autosave: bool,
) -> Result<bool, PersistenceError>
fn make_persistent( &mut self, provider: impl PersistenceProvider<Self> + 'static, autosave: bool, ) -> Result<bool, PersistenceError>
Returns whether the object was persisting before this method.
fn store(&mut self) -> Result<(), PersistenceError>
Auto Trait Implementations§
impl<L2> Freeze for WalletCache<L2>where
L2: Freeze,
impl<L2> !RefUnwindSafe for WalletCache<L2>
impl<L2> Send for WalletCache<L2>where
L2: Send,
impl<L2> Sync for WalletCache<L2>where
L2: Sync,
impl<L2> Unpin for WalletCache<L2>where
L2: Unpin,
impl<L2> !UnwindSafe for WalletCache<L2>
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
Mutably borrows from an owned value. Read more