Skip to content

Commit 89db3ae

Browse files
Add weight, size, and vsize methods on the Transaction type
1 parent f5d4750 commit 89db3ae

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

bdk-ffi/src/bdk.udl

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -238,10 +238,16 @@ interface FeeRate {
238238
};
239239

240240
interface Transaction {
241-
[Throws=BdkError]
242-
constructor(sequence<u8> transaction_bytes);
241+
[Throws=BdkError]
242+
constructor(sequence<u8> transaction_bytes);
243+
244+
sequence<u8> serialize();
245+
246+
u64 weight();
247+
248+
u64 size();
243249

244-
sequence<u8> serialize();
250+
u64 vsize();
245251
};
246252

247253
interface PartiallySignedTransaction {

bdk-ffi/src/lib.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,18 @@ impl Transaction {
239239
fn serialize(&self) -> Vec<u8> {
240240
self.internal.serialize()
241241
}
242+
243+
fn weight(&self) -> u64 {
244+
self.internal.weight() as u64
245+
}
246+
247+
fn size(&self) -> u64 {
248+
self.internal.size() as u64
249+
}
250+
251+
fn vsize(&self) -> u64 {
252+
self.internal.vsize() as u64
253+
}
242254
}
243255

244256
/// A Bitcoin address.

0 commit comments

Comments
 (0)