1 //! High level lightning structs and impls live here.
3 //! You probably want to create a channelmanager::ChannelManager, and a router::Router first.
4 //! Then, you probably want to pass them both on to a peer_handler::PeerManager and use that to
5 //! create/manage connections and call get_and_clear_pending_events after each action, handling
6 //! them appropriately.
8 //! When you want to open/close a channel or send a payment, call into your ChannelManager and when
9 //! you want to learn things about the network topology (eg get a route for sending a payment),
10 //! call into your Router.
12 pub mod channelmanager;
13 pub mod channelmonitor;
18 #[cfg(feature = "fuzztarget")]
19 pub mod peer_channel_encryptor;
20 #[cfg(not(feature = "fuzztarget"))]
21 pub(crate) mod peer_channel_encryptor;
28 #[macro_use] mod functional_test_utils;
32 mod chanmon_update_fail_tests;