[][src]Module lightning::ln

High level lightning structs and impls live here.

You probably want to create a channelmanager::ChannelManager, and a router::Router first. Then, you probably want to pass them both on to a peer_handler::PeerManager and use that to create/manage connections and call get_and_clear_pending_events after each action, handling them appropriately.

When you want to open/close a channel or send a payment, call into your ChannelManager and when you want to learn things about the network topology (eg get a route for sending a payment), call into your Router.

Modules

channelmanager

The top-level channel management and payment tracking stuff lives here.

channelmonitor

The logic to monitor for on-chain transactions and create the relevant claim responses lives here.

msgs

Wire messages, traits representing wire message handlers, and a few error types live here.

peer_handler

Top level peer message handling and socket handling logic lives here.

router

The top-level routing/network map tracking logic lives here.