refactor(bdk)!: rename LocalUtxo
to LocalOutput
This commit is contained in:
parent
46d39beb2c
commit
82632897aa
@ -161,7 +161,7 @@ impl Vbytes for usize {
|
|||||||
///
|
///
|
||||||
/// [`Wallet`]: crate::Wallet
|
/// [`Wallet`]: crate::Wallet
|
||||||
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, Hash)]
|
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, Hash)]
|
||||||
pub struct LocalUtxo {
|
pub struct LocalOutput {
|
||||||
/// Reference to a transaction output
|
/// Reference to a transaction output
|
||||||
pub outpoint: OutPoint,
|
pub outpoint: OutPoint,
|
||||||
/// Transaction output
|
/// Transaction output
|
||||||
@ -192,7 +192,7 @@ pub struct WeightedUtxo {
|
|||||||
/// An unspent transaction output (UTXO).
|
/// An unspent transaction output (UTXO).
|
||||||
pub enum Utxo {
|
pub enum Utxo {
|
||||||
/// A UTXO owned by the local wallet.
|
/// A UTXO owned by the local wallet.
|
||||||
Local(LocalUtxo),
|
Local(LocalOutput),
|
||||||
/// A UTXO owned by another wallet.
|
/// A UTXO owned by another wallet.
|
||||||
Foreign {
|
Foreign {
|
||||||
/// The location of the output.
|
/// The location of the output.
|
||||||
|
@ -755,7 +755,7 @@ mod test {
|
|||||||
.unwrap();
|
.unwrap();
|
||||||
WeightedUtxo {
|
WeightedUtxo {
|
||||||
satisfaction_weight: P2WPKH_SATISFACTION_SIZE,
|
satisfaction_weight: P2WPKH_SATISFACTION_SIZE,
|
||||||
utxo: Utxo::Local(LocalUtxo {
|
utxo: Utxo::Local(LocalOutput {
|
||||||
outpoint,
|
outpoint,
|
||||||
txout: TxOut {
|
txout: TxOut {
|
||||||
value,
|
value,
|
||||||
@ -815,7 +815,7 @@ mod test {
|
|||||||
for _ in 0..utxos_number {
|
for _ in 0..utxos_number {
|
||||||
res.push(WeightedUtxo {
|
res.push(WeightedUtxo {
|
||||||
satisfaction_weight: P2WPKH_SATISFACTION_SIZE,
|
satisfaction_weight: P2WPKH_SATISFACTION_SIZE,
|
||||||
utxo: Utxo::Local(LocalUtxo {
|
utxo: Utxo::Local(LocalOutput {
|
||||||
outpoint: OutPoint::from_str(
|
outpoint: OutPoint::from_str(
|
||||||
"ebd9813ecebc57ff8f30797de7c205e3c7498ca950ea4341ee51a685ff2fa30a:0",
|
"ebd9813ecebc57ff8f30797de7c205e3c7498ca950ea4341ee51a685ff2fa30a:0",
|
||||||
)
|
)
|
||||||
@ -844,7 +844,7 @@ mod test {
|
|||||||
fn generate_same_value_utxos(utxos_value: u64, utxos_number: usize) -> Vec<WeightedUtxo> {
|
fn generate_same_value_utxos(utxos_value: u64, utxos_number: usize) -> Vec<WeightedUtxo> {
|
||||||
let utxo = WeightedUtxo {
|
let utxo = WeightedUtxo {
|
||||||
satisfaction_weight: P2WPKH_SATISFACTION_SIZE,
|
satisfaction_weight: P2WPKH_SATISFACTION_SIZE,
|
||||||
utxo: Utxo::Local(LocalUtxo {
|
utxo: Utxo::Local(LocalOutput {
|
||||||
outpoint: OutPoint::from_str(
|
outpoint: OutPoint::from_str(
|
||||||
"ebd9813ecebc57ff8f30797de7c205e3c7498ca950ea4341ee51a685ff2fa30a:0",
|
"ebd9813ecebc57ff8f30797de7c205e3c7498ca950ea4341ee51a685ff2fa30a:0",
|
||||||
)
|
)
|
||||||
|
@ -737,7 +737,7 @@ impl<D> Wallet<D> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Return the list of unspent outputs of this wallet
|
/// Return the list of unspent outputs of this wallet
|
||||||
pub fn list_unspent(&self) -> impl Iterator<Item = LocalUtxo> + '_ {
|
pub fn list_unspent(&self) -> impl Iterator<Item = LocalOutput> + '_ {
|
||||||
self.indexed_graph
|
self.indexed_graph
|
||||||
.graph()
|
.graph()
|
||||||
.filter_chain_unspents(
|
.filter_chain_unspents(
|
||||||
@ -786,7 +786,7 @@ impl<D> Wallet<D> {
|
|||||||
|
|
||||||
/// Returns the utxo owned by this wallet corresponding to `outpoint` if it exists in the
|
/// Returns the utxo owned by this wallet corresponding to `outpoint` if it exists in the
|
||||||
/// wallet's database.
|
/// wallet's database.
|
||||||
pub fn get_utxo(&self, op: OutPoint) -> Option<LocalUtxo> {
|
pub fn get_utxo(&self, op: OutPoint) -> Option<LocalOutput> {
|
||||||
let (&spk_i, _) = self.indexed_graph.index.txout(op)?;
|
let (&spk_i, _) = self.indexed_graph.index.txout(op)?;
|
||||||
self.indexed_graph
|
self.indexed_graph
|
||||||
.graph()
|
.graph()
|
||||||
@ -1617,7 +1617,7 @@ impl<D> Wallet<D> {
|
|||||||
.max_satisfaction_weight()
|
.max_satisfaction_weight()
|
||||||
.unwrap();
|
.unwrap();
|
||||||
WeightedUtxo {
|
WeightedUtxo {
|
||||||
utxo: Utxo::Local(LocalUtxo {
|
utxo: Utxo::Local(LocalOutput {
|
||||||
outpoint: txin.previous_output,
|
outpoint: txin.previous_output,
|
||||||
txout: txout.clone(),
|
txout: txout.clone(),
|
||||||
keychain,
|
keychain,
|
||||||
@ -1944,7 +1944,7 @@ impl<D> Wallet<D> {
|
|||||||
descriptor.at_derivation_index(child).ok()
|
descriptor.at_derivation_index(child).ok()
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_available_utxos(&self) -> Vec<(LocalUtxo, usize)> {
|
fn get_available_utxos(&self) -> Vec<(LocalOutput, usize)> {
|
||||||
self.list_unspent()
|
self.list_unspent()
|
||||||
.map(|utxo| {
|
.map(|utxo| {
|
||||||
let keychain = utxo.keychain;
|
let keychain = utxo.keychain;
|
||||||
@ -2141,7 +2141,7 @@ impl<D> Wallet<D> {
|
|||||||
/// get the corresponding PSBT Input for a LocalUtxo
|
/// get the corresponding PSBT Input for a LocalUtxo
|
||||||
pub fn get_psbt_input(
|
pub fn get_psbt_input(
|
||||||
&self,
|
&self,
|
||||||
utxo: LocalUtxo,
|
utxo: LocalOutput,
|
||||||
sighash_type: Option<psbt::PsbtSighashType>,
|
sighash_type: Option<psbt::PsbtSighashType>,
|
||||||
only_witness_utxo: bool,
|
only_witness_utxo: bool,
|
||||||
) -> Result<psbt::Input, CreateTxError<D::WriteError>>
|
) -> Result<psbt::Input, CreateTxError<D::WriteError>>
|
||||||
@ -2352,8 +2352,8 @@ fn new_local_utxo(
|
|||||||
keychain: KeychainKind,
|
keychain: KeychainKind,
|
||||||
derivation_index: u32,
|
derivation_index: u32,
|
||||||
full_txo: FullTxOut<ConfirmationTimeHeightAnchor>,
|
full_txo: FullTxOut<ConfirmationTimeHeightAnchor>,
|
||||||
) -> LocalUtxo {
|
) -> LocalOutput {
|
||||||
LocalUtxo {
|
LocalOutput {
|
||||||
outpoint: full_txo.outpoint,
|
outpoint: full_txo.outpoint,
|
||||||
txout: full_txo.txout,
|
txout: full_txo.txout,
|
||||||
is_spent: full_txo.spent_by.is_some(),
|
is_spent: full_txo.spent_by.is_some(),
|
||||||
|
@ -53,7 +53,7 @@ use bitcoin::{absolute, script::PushBytes, OutPoint, ScriptBuf, Sequence, Transa
|
|||||||
|
|
||||||
use super::coin_selection::{CoinSelectionAlgorithm, DefaultCoinSelectionAlgorithm};
|
use super::coin_selection::{CoinSelectionAlgorithm, DefaultCoinSelectionAlgorithm};
|
||||||
use super::ChangeSet;
|
use super::ChangeSet;
|
||||||
use crate::types::{FeeRate, KeychainKind, LocalUtxo, WeightedUtxo};
|
use crate::types::{FeeRate, KeychainKind, LocalOutput, WeightedUtxo};
|
||||||
use crate::wallet::CreateTxError;
|
use crate::wallet::CreateTxError;
|
||||||
use crate::{Utxo, Wallet};
|
use crate::{Utxo, Wallet};
|
||||||
|
|
||||||
@ -889,7 +889,7 @@ impl Default for ChangeSpendPolicy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl ChangeSpendPolicy {
|
impl ChangeSpendPolicy {
|
||||||
pub(crate) fn is_satisfied_by(&self, utxo: &LocalUtxo) -> bool {
|
pub(crate) fn is_satisfied_by(&self, utxo: &LocalOutput) -> bool {
|
||||||
match self {
|
match self {
|
||||||
ChangeSpendPolicy::ChangeAllowed => true,
|
ChangeSpendPolicy::ChangeAllowed => true,
|
||||||
ChangeSpendPolicy::OnlyChange => utxo.keychain == KeychainKind::Internal,
|
ChangeSpendPolicy::OnlyChange => utxo.keychain == KeychainKind::Internal,
|
||||||
@ -994,11 +994,11 @@ mod test {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_test_utxos() -> Vec<LocalUtxo> {
|
fn get_test_utxos() -> Vec<LocalOutput> {
|
||||||
use bitcoin::hashes::Hash;
|
use bitcoin::hashes::Hash;
|
||||||
|
|
||||||
vec![
|
vec![
|
||||||
LocalUtxo {
|
LocalOutput {
|
||||||
outpoint: OutPoint {
|
outpoint: OutPoint {
|
||||||
txid: bitcoin::Txid::from_slice(&[0; 32]).unwrap(),
|
txid: bitcoin::Txid::from_slice(&[0; 32]).unwrap(),
|
||||||
vout: 0,
|
vout: 0,
|
||||||
@ -1009,7 +1009,7 @@ mod test {
|
|||||||
confirmation_time: ConfirmationTime::Unconfirmed { last_seen: 0 },
|
confirmation_time: ConfirmationTime::Unconfirmed { last_seen: 0 },
|
||||||
derivation_index: 0,
|
derivation_index: 0,
|
||||||
},
|
},
|
||||||
LocalUtxo {
|
LocalOutput {
|
||||||
outpoint: OutPoint {
|
outpoint: OutPoint {
|
||||||
txid: bitcoin::Txid::from_slice(&[0; 32]).unwrap(),
|
txid: bitcoin::Txid::from_slice(&[0; 32]).unwrap(),
|
||||||
vout: 1,
|
vout: 1,
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#![allow(unused)]
|
#![allow(unused)]
|
||||||
|
|
||||||
use bdk::{wallet::AddressIndex, KeychainKind, LocalUtxo, Wallet};
|
use bdk::{wallet::AddressIndex, KeychainKind, LocalOutput, Wallet};
|
||||||
use bdk_chain::indexed_tx_graph::Indexer;
|
use bdk_chain::indexed_tx_graph::Indexer;
|
||||||
use bdk_chain::{BlockId, ConfirmationTime};
|
use bdk_chain::{BlockId, ConfirmationTime};
|
||||||
use bitcoin::hashes::Hash;
|
use bitcoin::hashes::Hash;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user