Skip to content

Commit 464ac59

Browse files
committed
Deparametrize BackgroundProcessor to infer Signer from KeysInterface.
1 parent 2e343e7 commit 464ac59

File tree

1 file changed

+10
-12
lines changed
  • lightning-background-processor/src

1 file changed

+10
-12
lines changed

lightning-background-processor/src/lib.rs

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ extern crate lightning_rapid_gossip_sync;
1717
use lightning::chain;
1818
use lightning::chain::chaininterface::{BroadcasterInterface, FeeEstimator};
1919
use lightning::chain::chainmonitor::{ChainMonitor, Persist};
20-
use lightning::chain::keysinterface::{Sign, KeysInterface};
20+
use lightning::chain::keysinterface::KeysInterface;
2121
use lightning::ln::channelmanager::ChannelManager;
2222
use lightning::ln::msgs::{ChannelMessageHandler, OnionMessageHandler, RoutingMessageHandler};
2323
use lightning::ln::peer_handler::{CustomMessageHandler, PeerManager, SocketDescriptor};
@@ -365,7 +365,6 @@ macro_rules! define_run_body {
365365
#[cfg(feature = "futures")]
366366
pub async fn process_events_async<
367367
'a,
368-
Signer: 'static + Sign,
369368
CA: 'static + Deref + Send + Sync,
370369
CF: 'static + Deref + Send + Sync,
371370
CW: 'static + Deref + Send + Sync,
@@ -381,7 +380,7 @@ pub async fn process_events_async<
381380
OMH: 'static + Deref + Send + Sync,
382381
EH: 'static + EventHandler + Send,
383382
PS: 'static + Deref + Send,
384-
M: 'static + Deref<Target = ChainMonitor<Signer, CF, T, F, L, P>> + Send + Sync,
383+
M: 'static + Deref<Target = ChainMonitor<<K::Target as KeysInterface>::Signer, CF, T, F, L, P>> + Send + Sync,
385384
CM: 'static + Deref<Target = ChannelManager<CW, T, K, F, L>> + Send + Sync,
386385
PGS: 'static + Deref<Target = P2PGossipSync<G, CA, L>> + Send + Sync,
387386
RGS: 'static + Deref<Target = RapidGossipSync<G, L>> + Send,
@@ -401,15 +400,15 @@ where
401400
CF::Target: 'static + chain::Filter,
402401
CW::Target: 'static + chain::Watch<Signer>,
403402
T::Target: 'static + BroadcasterInterface,
404-
K::Target: 'static + KeysInterface<Signer = Signer>,
403+
K::Target: 'static + KeysInterface,
405404
F::Target: 'static + FeeEstimator,
406405
L::Target: 'static + Logger,
407-
P::Target: 'static + Persist<Signer>,
406+
P::Target: 'static + Persist<<K::Target as KeysInterface>::Signer>,
408407
CMH::Target: 'static + ChannelMessageHandler,
409408
OMH::Target: 'static + OnionMessageHandler,
410409
RMH::Target: 'static + RoutingMessageHandler,
411410
UMH::Target: 'static + CustomMessageHandler,
412-
PS::Target: 'static + Persister<'a, Signer, CW, T, K, F, L, SC>,
411+
PS::Target: 'static + Persister<'a, <K::Target as KeysInterface>::Signer, CW, T, K, F, L, SC>,
413412
{
414413
let mut should_continue = true;
415414
define_run_body!(persister, event_handler, chain_monitor, channel_manager,
@@ -471,7 +470,6 @@ impl BackgroundProcessor {
471470
/// [`NetworkGraph::write`]: lightning::routing::gossip::NetworkGraph#impl-Writeable
472471
pub fn start<
473472
'a,
474-
Signer: 'static + Sign,
475473
CA: 'static + Deref + Send + Sync,
476474
CF: 'static + Deref + Send + Sync,
477475
CW: 'static + Deref + Send + Sync,
@@ -487,7 +485,7 @@ impl BackgroundProcessor {
487485
RMH: 'static + Deref + Send + Sync,
488486
EH: 'static + EventHandler + Send,
489487
PS: 'static + Deref + Send,
490-
M: 'static + Deref<Target = ChainMonitor<Signer, CF, T, F, L, P>> + Send + Sync,
488+
M: 'static + Deref<Target = ChainMonitor<<K::Target as KeysInterface>::Signer, CF, T, F, L, P>> + Send + Sync,
491489
CM: 'static + Deref<Target = ChannelManager<CW, T, K, F, L>> + Send + Sync,
492490
PGS: 'static + Deref<Target = P2PGossipSync<G, CA, L>> + Send + Sync,
493491
RGS: 'static + Deref<Target = RapidGossipSync<G, L>> + Send,
@@ -502,17 +500,17 @@ impl BackgroundProcessor {
502500
where
503501
CA::Target: 'static + chain::Access,
504502
CF::Target: 'static + chain::Filter,
505-
CW::Target: 'static + chain::Watch<Signer>,
503+
CW::Target: 'static + chain::Watch<<K::Target as KeysInterface>::Signer>,
506504
T::Target: 'static + BroadcasterInterface,
507-
K::Target: 'static + KeysInterface<Signer = Signer>,
505+
K::Target: 'static + KeysInterface,
508506
F::Target: 'static + FeeEstimator,
509507
L::Target: 'static + Logger,
510-
P::Target: 'static + Persist<Signer>,
508+
P::Target: 'static + Persist<<K::Target as KeysInterface>::Signer>,
511509
CMH::Target: 'static + ChannelMessageHandler,
512510
OMH::Target: 'static + OnionMessageHandler,
513511
RMH::Target: 'static + RoutingMessageHandler,
514512
UMH::Target: 'static + CustomMessageHandler,
515-
PS::Target: 'static + Persister<'a, Signer, CW, T, K, F, L, SC>,
513+
PS::Target: 'static + Persister<'a, <K::Target as KeysInterface>::Signer, CW, T, K, F, L, SC>,
516514
{
517515
let stop_thread = Arc::new(AtomicBool::new(false));
518516
let stop_thread_clone = stop_thread.clone();

0 commit comments

Comments
 (0)