pub fn flow<'message, Board, Completion, Failure, const CAPACITY: usize>(
switchboard: &mut Board,
from: Board::From<'message>,
pending: &mut PendingRoutes<Board::To<'message>, CAPACITY>,
send: impl FnMut(Board::To<'message>) -> Result<CircuitSendOutcome<Board::From<'message>, Completion>, Failure>,
) -> Result<CircuitFlowOutcome<Completion>, FlowFailure<Failure, Board::To<'message>>>where
Board: Switchboard,