pub type SimpleArcPeerManager<SD, M, T, F, C, L> = PeerManager<SD, Arc<ChannelManager<Arc<M>, Arc<T>, Arc<KeysManager>, Arc<KeysManager>, Arc<KeysManager>, Arc<F>, Arc<DefaultRouter<Arc<NetworkGraph<Arc<L>>>, Arc<L>, Arc<Mutex<ProbabilisticScorerUsingTime<Arc<NetworkGraph<Arc<L>>>, Arc<L>, MonotonicTime>>>, ProbabilisticScoringFeeParameters, ProbabilisticScorerUsingTime<Arc<NetworkGraph<Arc<L>>>, Arc<L>, MonotonicTime>>>, Arc<L>>>, Arc<P2PGossipSync<Arc<NetworkGraph<Arc<L>>>, Arc<C>, Arc<L>>>, Arc<OnionMessenger<Arc<KeysManager>, Arc<KeysManager>, Arc<L>, Arc<DefaultMessageRouter>, IgnoringMessageHandler, IgnoringMessageHandler>>, Arc<L>, IgnoringMessageHandler, Arc<KeysManager>>;
Expand description

SimpleArcPeerManager is useful when you need a PeerManager with a static lifetime, e.g. when you’re using lightning-net-tokio (since tokio::spawn requires parameters with static lifetimes). Other times you can afford a reference, which is more efficient, in which case SimpleRefPeerManager is the more appropriate type. Defining these type aliases prevents issues such as overly long function definitions.

This is not exported to bindings users as Arcs don’t make sense in bindings.

Aliased Type§

struct SimpleArcPeerManager<SD, M, T, F, C, L> { /* private fields */ }