Skip to main content

WorkQueueSends

Struct WorkQueueSends 

Source
pub struct WorkQueueSends<Assignments, OutcomeSends> {
    pub assignments: Assignments,
    pub outcomes: OutcomeSends,
}
Expand description

Named effect lanes emitted by WorkQueue.

Fields§

§assignments: Assignments

Work assigned to workers.

§outcomes: OutcomeSends

Submission admission and dispatch facts.

Trait Implementations§

Source§

impl<Assignments, OutcomeSends> ClassifySettlement for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: ClassifySettlement, OutcomeSends: ClassifySettlement,

Source§

fn settlement_status(&self) -> SettlementStatus

Inspect every member without consuming or rewriting the settlement.
Source§

impl<Assignments, OutcomeSends, __BombayInterpreter, __BombayRootEvent, __BombayPath> InterpretSends<__BombayInterpreter, __BombayRootEvent, __BombayPath> for WorkQueueSends<Assignments, OutcomeSends>
where __BombayInterpreter: Send, WorkQueueSends<Assignments, OutcomeSends>: Send, Assignments: InterpretSends<__BombayInterpreter, __BombayRootEvent, __BombayPath>, OutcomeSends: InterpretSends<__BombayInterpreter, __BombayRootEvent, __BombayPath>, <WorkQueueSends<Assignments, OutcomeSends> as SendSettlements>::InterpretationCustody: Send,

Source§

fn interpret( progress: &mut Option<InterpretationProgress<Self, Self::InterpretationCustody, Self::Settlements>>, interpreter: &mut __BombayInterpreter, ) -> impl Future<Output = ()> + Send

Source§

impl<Assignments, OutcomeSends> LogicalDeliveryProtocols for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: LogicalDeliveryProtocols, OutcomeSends: LogicalDeliveryProtocols,

Source§

type Protocols = <<NoBirthProtocols as BirthProtocolProduct>::Append<<Assignments as LogicalDeliveryProtocols>::Protocols> as BirthProtocolProduct>::Append<<OutcomeSends as LogicalDeliveryProtocols>::Protocols>

Ordered, duplicate-preserving logical protocol occurrences.
Source§

impl<Assignments, OutcomeSends> SendEffects for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: SendEffects, OutcomeSends: SendEffects,

Source§

fn empty() -> Self

Source§

fn append(&mut self, other: Self)

Source§

fn combine(self, other: Self) -> Self

Source§

fn send<Input, Path>(&mut self, input: Input)
where Self: SendInput<Input, Path>,

Append one request to its statically selected semantic lane.
Source§

fn sending<Input, Path>(input: Input) -> Self
where Self: SendInput<Input, Path>,

Build a send product containing one request in its selected lane.
Source§

impl<Assignments, OutcomeSends> SendSettlements for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: SendSettlements, OutcomeSends: SendSettlements,

Source§

impl<Assignments, OutcomeSends, __BombaySettlementHost, __BombaySettlementEvent> SourceSettlementCustody<__BombaySettlementHost, __BombaySettlementEvent> for WorkQueueSends<Assignments, OutcomeSends>
where __BombaySettlementHost: Send, Assignments: SourceSettlementCustody<__BombaySettlementHost, __BombaySettlementEvent> + Send, OutcomeSends: SourceSettlementCustody<__BombaySettlementHost, __BombaySettlementEvent> + Send,

Source§

type Custody = (Option<SourceProgress<Assignments, <Assignments as SourceSettlementCustody<__BombaySettlementHost, __BombaySettlementEvent>>::Custody>>, Option<SourceProgress<(OutcomeSends, NoSends), (Option<SourceProgress<OutcomeSends, <OutcomeSends as SourceSettlementCustody<__BombaySettlementHost, __BombaySettlementEvent>>::Custody>>, Option<SourceProgress<NoSends, NoSends>>)>>)

Source§

fn prepare_source(progress: &mut Option<SourceProgress<Self, Self::Custody>>)

Source§

fn offer_next_to_source( custody: &mut Self::Custody, host: &mut __BombaySettlementHost, ) -> impl Future<Output = ()> + Send

Source§

fn finish_source(progress: &mut Option<SourceProgress<Self, Self::Custody>>)

Source§

impl<Assignments, OutcomeSends, __BombayEvent> SendsFor<__BombayEvent> for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: SendsFor<__BombayEvent>, OutcomeSends: SendsFor<__BombayEvent>,

Auto Trait Implementations§

§

impl<Assignments, OutcomeSends> Freeze for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: Freeze, OutcomeSends: Freeze,

§

impl<Assignments, OutcomeSends> RefUnwindSafe for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: RefUnwindSafe, OutcomeSends: RefUnwindSafe,

§

impl<Assignments, OutcomeSends> Send for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: Send, OutcomeSends: Send,

§

impl<Assignments, OutcomeSends> Sync for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: Sync, OutcomeSends: Sync,

§

impl<Assignments, OutcomeSends> Unpin for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: Unpin, OutcomeSends: Unpin,

§

impl<Assignments, OutcomeSends> UnsafeUnpin for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: UnsafeUnpin, OutcomeSends: UnsafeUnpin,

§

impl<Assignments, OutcomeSends> UnwindSafe for WorkQueueSends<Assignments, OutcomeSends>
where Assignments: UnwindSafe, OutcomeSends: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.