Trait bdk::database::Database [−][src]
Trait for reading data from a database
This traits defines the operations that can be used to read data out of a database
Required methods
fn check_descriptor_checksum<B: AsRef<[u8]>>(
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
[src]
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
Read and checks the descriptor checksum for a given keychain.
Should return Error::ChecksumMismatch
if the
checksum doesn’t match. If there’s no checksum in the database, simply store it for the
next time.
fn iter_script_pubkeys(
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
[src]
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
Return the list of script_pubkeys
fn iter_utxos(&self) -> Result<Vec<LocalUtxo>, Error>
[src]
Return the list of LocalUtxo
s
fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>
[src]
Return the list of raw transactions
fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>
[src]
Return the list of transactions metadata
fn get_script_pubkey_from_path(
&self,
keychain: KeychainKind,
child: u32
) -> Result<Option<Script>, Error>
[src]
&self,
keychain: KeychainKind,
child: u32
) -> Result<Option<Script>, Error>
Fetch a script_pubkey given the child number of a keychain.
fn get_path_from_script_pubkey(
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
[src]
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
Fetch the keychain and child number of a given script_pubkey
fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<LocalUtxo>, Error>
[src]
fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
[src]
Fetch a raw transaction given its Txid
fn get_tx(
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
[src]
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
Fetch the transaction metadata and optionally also the raw transaction
fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error>
[src]
Return the last defivation index for a keychain.
fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error>
[src]
Increment the last derivation index for a keychain and return it
It should insert and return 0
if not present in the database
Implementations on Foreign Types
impl Database for Tree
[src]
fn check_descriptor_checksum<B: AsRef<[u8]>>(
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
[src]
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
fn iter_script_pubkeys(
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
[src]
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
fn iter_utxos(&self) -> Result<Vec<LocalUtxo>, Error>
[src]
fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>
[src]
fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>
[src]
fn get_script_pubkey_from_path(
&self,
keychain: KeychainKind,
path: u32
) -> Result<Option<Script>, Error>
[src]
&self,
keychain: KeychainKind,
path: u32
) -> Result<Option<Script>, Error>
fn get_path_from_script_pubkey(
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
[src]
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<LocalUtxo>, Error>
[src]
fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
[src]
fn get_tx(
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
[src]
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error>
[src]
fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error>
[src]
Implementors
impl Database for AnyDatabase
[src]
fn check_descriptor_checksum<B: AsRef<[u8]>>(
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
[src]
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
fn iter_script_pubkeys(
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
[src]
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
fn iter_utxos(&self) -> Result<Vec<LocalUtxo>, Error>
[src]
fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>
[src]
fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>
[src]
fn get_script_pubkey_from_path(
&self,
keychain: KeychainKind,
child: u32
) -> Result<Option<Script>, Error>
[src]
&self,
keychain: KeychainKind,
child: u32
) -> Result<Option<Script>, Error>
fn get_path_from_script_pubkey(
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
[src]
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<LocalUtxo>, Error>
[src]
fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
[src]
fn get_tx(
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
[src]
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error>
[src]
fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error>
[src]
impl Database for MemoryDatabase
[src]
fn check_descriptor_checksum<B: AsRef<[u8]>>(
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
[src]
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
fn iter_script_pubkeys(
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
[src]
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
fn iter_utxos(&self) -> Result<Vec<LocalUtxo>, Error>
[src]
fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>
[src]
fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>
[src]
fn get_script_pubkey_from_path(
&self,
keychain: KeychainKind,
path: u32
) -> Result<Option<Script>, Error>
[src]
&self,
keychain: KeychainKind,
path: u32
) -> Result<Option<Script>, Error>
fn get_path_from_script_pubkey(
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
[src]
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<LocalUtxo>, Error>
[src]
fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
[src]
fn get_tx(
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
[src]
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>