autopilot: add ForEachNodesChannels method to ChannelGraph interface

This is in preparation for removing the ForEachChannel method from the
Node interface.
This commit is contained in:
Elle Mouton
2025-08-03 17:18:35 +02:00
parent 5727bfa688
commit ce7fe84da7
3 changed files with 118 additions and 4 deletions

View File

@@ -87,6 +87,14 @@ type ChannelGraph interface {
// callback returns an error, then execution should be terminated.
ForEachNode(context.Context, func(context.Context, Node) error,
func()) error
// ForEachNodesChannels iterates through all connected nodes, and for
// each node, all the channels that connect to it. The passed callback
// will be called with the context, the Node itself, and a slice of
// ChannelEdge that connect to the node.
ForEachNodesChannels(ctx context.Context,
cb func(context.Context, Node, []*ChannelEdge) error,
reset func()) error
}
// NodeScore is a tuple mapping a NodeID to a score indicating the preference