@@ -15,7 +15,7 @@ use crate::io;
1515use crate :: ln:: msgs:: DecodeError ;
1616use crate :: ln:: types:: ChannelId ;
1717use crate :: prelude:: * ;
18- use crate :: sign:: { ChangeDestinationSource , ChangeDestinationSourceSync , ChangeDestinationSourceSyncWrapper , OutputSpender , SpendableOutputDescriptor } ;
18+ use crate :: sign:: { ChangeDestinationSource , ChangeDestinationSourceSync , OutputSpender , SpendableOutputDescriptor } ;
1919use crate :: sync:: Mutex ;
2020use crate :: util:: logger:: Logger ;
2121use crate :: util:: persist:: {
@@ -357,46 +357,31 @@ where
357357 logger : L ,
358358}
359359
360- pub struct OutputSweeperSync < B : Deref , D : Deref , E : Deref , F : Deref , K : Deref , L : Deref , O : Deref >
360+ impl < B : Deref , D : Deref + Sized , E : Deref , F : Deref , K : Deref , L : Deref , O : Deref >
361+ OutputSweeper < B , D , E , F , K , L , O >
361362where
362363 B :: Target : BroadcasterInterface ,
363- D :: Target : ChangeDestinationSource ,
364+ D :: Target : ChangeDestinationSourceSync + Sized ,
364365 E :: Target : FeeEstimator ,
365366 F :: Target : Filter + Sync + Send ,
366367 K :: Target : KVStore ,
367368 L :: Target : Logger ,
368369 O :: Target : OutputSpender ,
369370{
370- sweeper : OutputSweeper < B , D , E , F , K , L , O > ,
371- }
372-
373- impl < B : Deref , D : Deref , E : Deref , F : Deref , K : Deref , L : Deref , O : Deref >
374- OutputSweeperSync < B , D , E , F , K , L , O >
375- where
376- B :: Target : BroadcasterInterface ,
377- D :: Target : ChangeDestinationSource ,
378- E :: Target : FeeEstimator ,
379- F :: Target : Filter + Sync + Send ,
380- K :: Target : KVStore ,
381- L :: Target : Logger ,
382- O :: Target : OutputSpender ,
383- {
384- fn new < DA : ChangeDestinationSourceSync > (
371+ fn new_sync (
385372 best_block : BestBlock , broadcaster : B , fee_estimator : E , chain_data_source : Option < F > ,
386- output_spender : O , change_destination_source : DA , kv_store : K , logger : L ,
373+ output_spender : O , change_destination_source : D , kv_store : K , logger : L ,
387374 ) -> Self {
388- let change_destination_source = Arc :: new ( ChangeDestinationSourceSyncWrapper :: new ( change_destination_source) ) ;
389375
390- let sweeper = OutputSweeper :: new (
376+ OutputSweeper :: new (
391377 best_block, broadcaster, fee_estimator, chain_data_source, output_spender,
392378 change_destination_source, kv_store, logger,
393- ) ;
394- Self { sweeper }
379+ )
395380 }
396381
397382 /// Regenerates and broadcasts the spending transaction for any outputs that are pending
398383 pub fn regenerate_and_broadcast_spend_if_necessary ( & self ) -> Result < ( ) , ( ) > {
399- let mut fut = Box :: pin ( self . sweeper . regenerate_and_broadcast_spend_if_necessary_async ( ) ) ;
384+ let mut fut = Box :: pin ( self . regenerate_and_broadcast_spend_if_necessary_async ( ) ) ;
400385 let mut waker = dummy_waker ( ) ;
401386 let mut ctx = task:: Context :: from_waker ( & mut waker) ;
402387 match fut. as_mut ( ) . poll ( & mut ctx) {
0 commit comments