pub fn fifo<Factory, Role, W, P, Rejection, Source, DiagnosticRoute, Job, WorkerResult>(
factory: Factory,
roles: OrderedRoles<Role>,
activation: ActivationPolicy,
recovery: PoolRecovery<Source>,
backlog: BacklogCapacity,
interruption: Interruption,
actor_drain: ActorDrainPolicy,
diagnostics: DiagnosticDisposition<DiagnosticRoute>,
) -> Result<FifoPool<Role, W, P, Source, DiagnosticRoute, Job, WorkerResult>, FifoConstructionRejected<Factory, Role, W, P, Rejection, Source, DiagnosticRoute>>where
Factory: FnMut(&Role) -> Result<WorkerSubmission<W, P>, Rejection>,
Role: Eq,
W: Behavior,
W::Protocol: Protocol<Msg = Assignment<Job>>,
W::Sends: CompletesAssignments<WorkerResult = WorkerResult>,
BehaviorAddr<W>: EndpointAddress,Expand description
Construct one FIFO pool after preparing every declared worker in order.