From bfe38d9890ef0fbf18d02a8aa3de44008305a328 Mon Sep 17 00:00:00 2001 From: Sudarsan Balaji Date: Fri, 5 Nov 2021 01:13:45 +0530 Subject: [PATCH] Use From trait for conversion --- src/lib.rs | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 3ad57a2..63505de 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -82,20 +82,25 @@ pub enum Transaction { }, } -impl From<&bdk::TransactionDetails> for Transaction { - fn from(x: &bdk::TransactionDetails) -> Transaction { - let details = TransactionDetails { +impl From<&bdk::TransactionDetails> for TransactionDetails { + fn from(x: &bdk::TransactionDetails) -> TransactionDetails { + TransactionDetails { fees: x.fee, id: x.txid.to_string(), received: x.received, sent: x.sent, - }; + } + } +} + +impl From<&bdk::TransactionDetails> for Transaction { + fn from(x: &bdk::TransactionDetails) -> Transaction { match x.confirmation_time.clone() { Some(confirmation) => Transaction::Confirmed { - details, + details: TransactionDetails::from(x), confirmation, }, - None => Transaction::Unconfirmed { details }, + None => Transaction::Unconfirmed { details: TransactionDetails::from(x) }, } } }