Struct bdk::database::SqliteDatabase
source · pub struct SqliteDatabase {
pub path: PathBuf,
pub connection: Connection,
}
Expand description
Sqlite database stored on filesystem
This is a permanent storage solution for devices and platforms that provide a filesystem.
crate::database
Fields§
§path: PathBuf
Path on the local filesystem to store the sqlite file
connection: Connection
A rusqlite connection object to the sqlite database
Implementations§
Trait Implementations§
source§impl BatchDatabase for SqliteDatabase
impl BatchDatabase for SqliteDatabase
§type Batch = SqliteDatabase
type Batch = SqliteDatabase
Container for the operations
source§fn begin_batch(&self) -> Self::Batch
fn begin_batch(&self) -> Self::Batch
Create a new batch container
source§impl BatchOperations for SqliteDatabase
impl BatchOperations for SqliteDatabase
source§fn set_script_pubkey(
&mut self,
script: &Script,
keychain: KeychainKind,
child: u32
) -> Result<(), Error>
fn set_script_pubkey( &mut self, script: &Script, keychain: KeychainKind, child: u32 ) -> Result<(), Error>
Store a script_pubkey along with its keychain and child number.
source§fn set_raw_tx(&mut self, transaction: &Transaction) -> Result<(), Error>
fn set_raw_tx(&mut self, transaction: &Transaction) -> Result<(), Error>
Store a raw transaction
source§fn set_tx(&mut self, transaction: &TransactionDetails) -> Result<(), Error>
fn set_tx(&mut self, transaction: &TransactionDetails) -> Result<(), Error>
Store the metadata of a transaction
source§fn set_last_index(
&mut self,
keychain: KeychainKind,
value: u32
) -> Result<(), Error>
fn set_last_index( &mut self, keychain: KeychainKind, value: u32 ) -> Result<(), Error>
Store the last derivation index for a given keychain.
source§fn del_script_pubkey_from_path(
&mut self,
keychain: KeychainKind,
child: u32
) -> Result<Option<ScriptBuf>, Error>
fn del_script_pubkey_from_path( &mut self, keychain: KeychainKind, child: u32 ) -> Result<Option<ScriptBuf>, Error>
Delete a script_pubkey given the keychain and its child number.
source§fn del_path_from_script_pubkey(
&mut self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
fn del_path_from_script_pubkey( &mut self, script: &Script ) -> Result<Option<(KeychainKind, u32)>, Error>
Delete the data related to a specific script_pubkey, meaning the keychain and the child
number.
source§fn del_raw_tx(&mut self, txid: &Txid) -> Result<Option<Transaction>, Error>
fn del_raw_tx(&mut self, txid: &Txid) -> Result<Option<Transaction>, Error>
Delete a raw transaction given its
Txid
source§fn del_tx(
&mut self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
fn del_tx( &mut self, txid: &Txid, include_raw: bool ) -> Result<Option<TransactionDetails>, Error>
Delete the metadata of a transaction and optionally the raw transaction itself
source§fn del_last_index(
&mut self,
keychain: KeychainKind
) -> Result<Option<u32>, Error>
fn del_last_index( &mut self, keychain: KeychainKind ) -> Result<Option<u32>, Error>
Delete the last derivation index for a keychain.
source§impl ConfigurableDatabase for SqliteDatabase
impl ConfigurableDatabase for SqliteDatabase
§type Config = SqliteDbConfiguration
type Config = SqliteDbConfiguration
Type that contains the configuration
source§impl Database for SqliteDatabase
impl Database for SqliteDatabase
source§fn check_descriptor_checksum<B: AsRef<[u8]>>(
&mut self,
keychain: KeychainKind,
bytes: B
) -> Result<(), Error>
fn check_descriptor_checksum<B: AsRef<[u8]>>( &mut self, keychain: KeychainKind, bytes: B ) -> Result<(), Error>
Read and checks the descriptor checksum for a given keychain. Read more
source§fn iter_script_pubkeys(
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<ScriptBuf>, Error>
fn iter_script_pubkeys( &self, keychain: Option<KeychainKind> ) -> Result<Vec<ScriptBuf>, Error>
Return the list of script_pubkeys
source§fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>
fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>
Return the list of raw transactions
source§fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>
fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>
Return the list of transactions metadata
source§fn get_script_pubkey_from_path(
&self,
keychain: KeychainKind,
child: u32
) -> Result<Option<ScriptBuf>, Error>
fn get_script_pubkey_from_path( &self, keychain: KeychainKind, child: u32 ) -> Result<Option<ScriptBuf>, Error>
Fetch a script_pubkey given the child number of a keychain.
source§fn get_path_from_script_pubkey(
&self,
script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
fn get_path_from_script_pubkey( &self, script: &Script ) -> Result<Option<(KeychainKind, u32)>, Error>
Fetch the keychain and child number of a given script_pubkey
source§fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
Fetch a raw transaction given its
Txid
source§fn get_tx(
&self,
txid: &Txid,
include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
fn get_tx( &self, txid: &Txid, include_raw: bool ) -> Result<Option<TransactionDetails>, Error>
Fetch the transaction metadata and optionally also the raw transaction
source§fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error>
fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error>
Return the last derivation index for a keychain.
source§fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error>
fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error>
Increment the last derivation index for a keychain and return it Read more
source§impl Debug for SqliteDatabase
impl Debug for SqliteDatabase
source§impl From<<SqliteDatabase as BatchDatabase>::Batch> for AnyBatch
impl From<<SqliteDatabase as BatchDatabase>::Batch> for AnyBatch
source§fn from(inner: <SqliteDatabase as BatchDatabase>::Batch) -> Self
fn from(inner: <SqliteDatabase as BatchDatabase>::Batch) -> Self
Converts to this type from the input type.
source§impl From<SqliteDatabase> for AnyDatabase
impl From<SqliteDatabase> for AnyDatabase
source§fn from(inner: SqliteDatabase) -> Self
fn from(inner: SqliteDatabase) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl !RefUnwindSafe for SqliteDatabase
impl Send for SqliteDatabase
impl !Sync for SqliteDatabase
impl Unpin for SqliteDatabase
impl !UnwindSafe for SqliteDatabase
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