Skip to content

Commit ce219e4

Browse files
feat: add fee_absolute method on txbuilder
1 parent c9019e9 commit ce219e4

File tree

2 files changed

+14
-12
lines changed

2 files changed

+14
-12
lines changed

bdk-ffi/src/bdk.udl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,8 @@ interface TxBuilder {
134134

135135
TxBuilder fee_rate(float sat_per_vbyte);
136136

137+
TxBuilder fee_absolute(u64 fee);
138+
137139
TxBuilder drain_wallet();
138140

139141
[Throws=BdkError]

bdk-ffi/src/wallet.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ pub struct TxBuilder {
299299
pub(crate) change_policy: ChangeSpendPolicy,
300300
pub(crate) manually_selected_only: bool,
301301
pub(crate) fee_rate: Option<f32>,
302-
// pub(crate) fee_absolute: Option<u64>,
302+
pub(crate) fee_absolute: Option<u64>,
303303
pub(crate) drain_wallet: bool,
304304
// pub(crate) drain_to: Option<BdkScript>,
305305
// pub(crate) rbf: Option<RbfValue>,
@@ -315,7 +315,7 @@ impl TxBuilder {
315315
change_policy: ChangeSpendPolicy::ChangeAllowed,
316316
manually_selected_only: false,
317317
fee_rate: None,
318-
// fee_absolute: None,
318+
fee_absolute: None,
319319
drain_wallet: false,
320320
// drain_to: None,
321321
// rbf: None,
@@ -423,13 +423,13 @@ impl TxBuilder {
423423
})
424424
}
425425

426-
// /// Set an absolute fee.
427-
// pub(crate) fn fee_absolute(&self, fee_amount: u64) -> Arc<Self> {
428-
// Arc::new(TxBuilder {
429-
// fee_absolute: Some(fee_amount),
430-
// ..self.clone()
431-
// })
432-
// }
426+
/// Set an absolute fee.
427+
pub(crate) fn fee_absolute(&self, fee_amount: u64) -> Arc<Self> {
428+
Arc::new(TxBuilder {
429+
fee_absolute: Some(fee_amount),
430+
..self.clone()
431+
})
432+
}
433433

434434
/// Spend all the available inputs. This respects filters like TxBuilder.unspendable and the change policy.
435435
pub(crate) fn drain_wallet(&self) -> Arc<Self> {
@@ -508,9 +508,9 @@ impl TxBuilder {
508508
if let Some(sat_per_vb) = self.fee_rate {
509509
tx_builder.fee_rate(FeeRate::from_sat_per_vb(sat_per_vb));
510510
}
511-
// if let Some(fee_amount) = self.fee_absolute {
512-
// tx_builder.fee_absolute(fee_amount);
513-
// }
511+
if let Some(fee_amount) = self.fee_absolute {
512+
tx_builder.fee_absolute(fee_amount);
513+
}
514514
if self.drain_wallet {
515515
tx_builder.drain_wallet();
516516
}

0 commit comments

Comments
 (0)