projects
/
rust-lightning
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make `confirmables` `Deref`
[rust-lightning]
/
lightning-transaction-sync
/
src
/
common.rs
diff --git
a/lightning-transaction-sync/src/common.rs
b/lightning-transaction-sync/src/common.rs
index c635f7385c6ecbd47bb6b4e90f5abb335feca8f5..d68ac95914e2461396b8df160316651de5b2ffc8 100644
(file)
--- 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 bitcoin::block::Header;
use std::collections::{HashSet, HashMap};
+use std::ops::Deref;
// Represents the current state.
// Represents the current state.
@@
-33,10
+34,12
@@
impl SyncState {
pending_sync: false,
}
}
pending_sync: false,
}
}
- pub fn sync_unconfirmed_transactions(
- &mut self, confirmables: &Vec<
&(dyn Confirm + Sync + Send)
>,
+ pub fn sync_unconfirmed_transactions
<C: Deref>
(
+ &mut self, confirmables: &Vec<
C
>,
unconfirmed_txs: Vec<Txid>,
unconfirmed_txs: Vec<Txid>,
- ) {
+ )
+ where C::Target: Confirm,
+ {
for txid in unconfirmed_txs {
for c in confirmables {
c.transaction_unconfirmed(&txid);
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
<C: Deref>
(
+ &mut self, confirmables: &Vec<
C
>,
confirmed_txs: Vec<ConfirmedTx>
confirmed_txs: Vec<ConfirmedTx>
- ) {
+ )
+ where C::Target: Confirm,
+ {
for ctx in confirmed_txs {
for c in confirmables {
c.transactions_confirmed(
for ctx in confirmed_txs {
for c in confirmables {
c.transactions_confirmed(