1- use crate :: collections:: { BTreeMap , BTreeSet , HashMap } ;
1+ use crate :: collections:: { BTreeMap , BTreeSet , HashMap , HashSet } ;
22use alloc:: { sync:: Arc , vec:: Vec } ;
33use bitcoin:: { OutPoint , Transaction , TxOut , Txid } ;
44
@@ -34,6 +34,8 @@ pub struct TxUpdate<A = ()> {
3434 /// Seen at times for transactions. This records when a transaction was most recently seen in
3535 /// the user's mempool for the sake of tie-breaking other conflicting transactions.
3636 pub seen_ats : HashMap < Txid , u64 > ,
37+ /// A set of txids missing from the mempool.
38+ pub missing : HashSet < Txid > ,
3739}
3840
3941impl < A > Default for TxUpdate < A > {
@@ -43,6 +45,7 @@ impl<A> Default for TxUpdate<A> {
4345 txouts : Default :: default ( ) ,
4446 anchors : Default :: default ( ) ,
4547 seen_ats : Default :: default ( ) ,
48+ missing : Default :: default ( ) ,
4649 }
4750 }
4851}
@@ -62,6 +65,7 @@ impl<A: Ord> TxUpdate<A> {
6265 . map ( |( a, txid) | ( map ( a) , txid) )
6366 . collect ( ) ,
6467 seen_ats : self . seen_ats ,
68+ missing : self . missing ,
6569 }
6670 }
6771
0 commit comments