Trait paxakos::Invocation [−][src]
pub trait Invocation: Sized + 'static {
type RoundNum: RoundNum;
type CoordNum: CoordNum;
type State: State;
type Yea: Debug + Send + Sync + 'static;
type Nay: Debug + Send + Sync + 'static;
type Abstain: Debug + Send + Sync + 'static;
type CommunicationError: Debug + Send + Sync + 'static;
fn node_builder() -> NodeBuilderBlank<Self> { ... }
}
Expand description
A set of type arguments to invoke Paxakos with.
Idiomatic Rust code will usually have separate type parameters for every
type. This has several advantages, for instance type bounds need only be
placed on implementations which require them. However, as a generic
implementation of a fairly complex algorithm, Paxakos would require rather a
lot of individual type parameters. Therefore Paxakos foregoes the idiomatic
approach and accepts a single Invocation
argument in most places.