Trait paxakos::node_builder::Finisher
source · [−]pub trait Finisher: 'static {
type Node: Node;
type Communicator: Communicator<Node = NodeOf<Self::Node>, RoundNum = RoundNumOf<Self::Node>, CoordNum = CoordNumOf<Self::Node>, LogEntry = LogEntryOf<Self::Node>, Error = CommunicationErrorOf<Self::Node>, Yea = YeaOf<Self::Node>, Nay = NayOf<Self::Node>, Abstain = AbstainOf<Self::Node>>;
fn finish(
self,
core: Core<InvocationOf<Self::Node>, Self::Communicator>
) -> Result<Self::Node, Box<dyn Error + Send + Sync + 'static>>;
}
Expand description
Used to construct the node when spawn_in
is called.
As decorations are added via ExtensibleNodeBuilder
, the builder keeps a
stack of the Decoration::wrap
calls to make. This stack is encoded via
implementations of the Finisher
trait.
Required Associated Types
type Communicator: Communicator<Node = NodeOf<Self::Node>, RoundNum = RoundNumOf<Self::Node>, CoordNum = CoordNumOf<Self::Node>, LogEntry = LogEntryOf<Self::Node>, Error = CommunicationErrorOf<Self::Node>, Yea = YeaOf<Self::Node>, Nay = NayOf<Self::Node>, Abstain = AbstainOf<Self::Node>>
type Communicator: Communicator<Node = NodeOf<Self::Node>, RoundNum = RoundNumOf<Self::Node>, CoordNum = CoordNumOf<Self::Node>, LogEntry = LogEntryOf<Self::Node>, Error = CommunicationErrorOf<Self::Node>, Yea = YeaOf<Self::Node>, Nay = NayOf<Self::Node>, Abstain = AbstainOf<Self::Node>>
Type of communicator used by the constructed node.