Struct bdk::database::memory::MemoryDatabase
source · pub struct MemoryDatabase { /* private fields */ }
Expand description
In-memory ephemeral database
This database can be used as a temporary storage for wallets that are not kept permanently on
a device, or on platforms that don’t provide a filesystem, like wasm32
.
Once it’s dropped its content will be lost.
If you are looking for a permanent storage solution, you can try with the default key-value
database called sled
. See the database
module documentation for more details.
Implementations§
Trait Implementations§
source§impl BatchDatabase for MemoryDatabase
impl BatchDatabase for MemoryDatabase
§type Batch = MemoryDatabase
type Batch = MemoryDatabase
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 MemoryDatabase
impl BatchOperations for MemoryDatabase
source§fn set_script_pubkey(
&mut self,
script: &Script,
keychain: KeychainKind,
path: u32
) -> Result<(), Error>
fn set_script_pubkey(
&mut self,
script: &Script,
keychain: KeychainKind,
path: 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,
path: u32
) -> Result<Option<Script>, Error>
fn del_script_pubkey_from_path(
&mut self,
keychain: KeychainKind,
path: u32
) -> Result<Option<Script>, 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 Database for MemoryDatabase
impl Database for MemoryDatabase
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<Script>, Error>
fn iter_script_pubkeys(
&self,
keychain: Option<KeychainKind>
) -> Result<Vec<Script>, 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,
path: u32
) -> Result<Option<Script>, Error>
fn get_script_pubkey_from_path(
&self,
keychain: KeychainKind,
path: u32
) -> Result<Option<Script>, 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 MemoryDatabase
impl Debug for MemoryDatabase
source§impl Default for MemoryDatabase
impl Default for MemoryDatabase
source§fn default() -> MemoryDatabase
fn default() -> MemoryDatabase
Returns the “default value” for a type. Read more
source§impl From<<MemoryDatabase as BatchDatabase>::Batch> for AnyBatch
impl From<<MemoryDatabase as BatchDatabase>::Batch> for AnyBatch
source§fn from(inner: <MemoryDatabase as BatchDatabase>::Batch) -> Self
fn from(inner: <MemoryDatabase as BatchDatabase>::Batch) -> Self
Converts to this type from the input type.
source§impl From<MemoryDatabase> for AnyDatabase
impl From<MemoryDatabase> for AnyDatabase
source§fn from(inner: MemoryDatabase) -> Self
fn from(inner: MemoryDatabase) -> Self
Converts to this type from the input type.