X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning-transaction-sync%2Fsrc%2Fcommon.rs;h=d68ac95914e2461396b8df160316651de5b2ffc8;hb=777ce7b059c0e81cbb36813d9ad028f767985fdd;hp=c635f7385c6ecbd47bb6b4e90f5abb335feca8f5;hpb=68d5e88e46cc1109b6c3d1bc9705a2327c1dace1;p=rust-lightning diff --git a/lightning-transaction-sync/src/common.rs b/lightning-transaction-sync/src/common.rs index c635f738..d68ac959 100644 --- a/lightning-transaction-sync/src/common.rs +++ b/lightning-transaction-sync/src/common.rs @@ -4,6 +4,7 @@ use bitcoin::{Txid, BlockHash, Transaction, OutPoint}; use bitcoin::block::Header; use std::collections::{HashSet, HashMap}; +use std::ops::Deref; // Represents the current state. @@ -33,10 +34,12 @@ impl SyncState { pending_sync: false, } } - pub fn sync_unconfirmed_transactions( - &mut self, confirmables: &Vec<&(dyn Confirm + Sync + Send)>, + pub fn sync_unconfirmed_transactions( + &mut self, confirmables: &Vec, unconfirmed_txs: Vec, - ) { + ) + where C::Target: Confirm, + { for txid in unconfirmed_txs { for c in confirmables { c.transaction_unconfirmed(&txid); @@ -57,10 +60,12 @@ impl SyncState { } } - pub fn sync_confirmed_transactions( - &mut self, confirmables: &Vec<&(dyn Confirm + Sync + Send)>, + pub fn sync_confirmed_transactions( + &mut self, confirmables: &Vec, confirmed_txs: Vec - ) { + ) + where C::Target: Confirm, + { for ctx in confirmed_txs { for c in confirmables { c.transactions_confirmed(