pub struct HeterogeneousShutdownSends<T> { /* private fields */ }Expand description
Ordered heterogeneous shutdown requests. Static dispatch occurs per item, preserving phase declaration order across protocol alternatives.
Implementations§
Trait Implementations§
Source§impl<T> ClassifySettlement for HeterogeneousShutdownSends<T>where
T: ClassifySettlement,
impl<T> ClassifySettlement for HeterogeneousShutdownSends<T>where
T: ClassifySettlement,
Source§fn settlement_status(&self) -> SettlementStatus
fn settlement_status(&self) -> SettlementStatus
Inspect every member without consuming or rewriting the settlement.
Source§impl<I, E, Path, T> InterpretSends<I, E, Path> for HeterogeneousShutdownSends<T>
impl<I, E, Path, T> InterpretSends<I, E, Path> for HeterogeneousShutdownSends<T>
fn interpret( progress: &mut Option<InterpretationProgress<Self, Self::InterpretationCustody, Self::Settlements>>, interpreter: &mut I, ) -> impl Future<Output = ()> + Send
Source§impl<T> LogicalDeliveryProtocols for HeterogeneousShutdownSends<T>
impl<T> LogicalDeliveryProtocols for HeterogeneousShutdownSends<T>
Source§type Protocols = NoBirthProtocols
type Protocols = NoBirthProtocols
Ordered, duplicate-preserving logical protocol occurrences.
Source§impl<T> SendEffects for HeterogeneousShutdownSends<T>
impl<T> SendEffects for HeterogeneousShutdownSends<T>
Source§impl<T> SendSettlements for HeterogeneousShutdownSends<T>where
T: ChoiceSettlements<ChildHead>,
impl<T> SendSettlements for HeterogeneousShutdownSends<T>where
T: ChoiceSettlements<ChildHead>,
type Settlements = HeterogeneousShutdownSends<<T as ChoiceSettlements<ChildHead>>::Settlements>
type SourceCustody = <HeterogeneousShutdownSends<T> as SendSettlements>::Settlements
type InterpretationCustody = Vec<Option<InterpretationProgress<T, <T as ChoiceSettlements<ChildHead>>::InterpretationCustody, <T as ChoiceSettlements<ChildHead>>::Settlements>>>
fn prepare_interpretation( progress: &mut Option<InterpretationProgress<Self, Self::InterpretationCustody, Self::Settlements>>, )
fn finish_interpretation( progress: &mut Option<InterpretationProgress<Self, Self::InterpretationCustody, Self::Settlements>>, )
fn unattempted( progress: &mut Option<InterpretationProgress<Self, Self::InterpretationCustody, Self::Settlements>>, )
Source§impl<Host, RootEvent, T> SourceSettlementCustody<Host, RootEvent> for HeterogeneousShutdownSends<T>where
T: Send,
impl<Host, RootEvent, T> SourceSettlementCustody<Host, RootEvent> for HeterogeneousShutdownSends<T>where
T: Send,
type Custody = HeterogeneousShutdownSends<T>
fn prepare_source(progress: &mut Option<SourceProgress<Self, Self::Custody>>)
fn offer_next_to_source( _: &mut Self::Custody, _: &mut Host, ) -> impl Future<Output = ()> + Send
fn finish_source(progress: &mut Option<SourceProgress<Self, Self::Custody>>)
impl<E, T: Send> SendsFor<E> for HeterogeneousShutdownSends<T>
Auto Trait Implementations§
impl<T> Freeze for HeterogeneousShutdownSends<T>
impl<T> RefUnwindSafe for HeterogeneousShutdownSends<T>where
T: RefUnwindSafe,
impl<T> Send for HeterogeneousShutdownSends<T>where
T: Send,
impl<T> Sync for HeterogeneousShutdownSends<T>where
T: Sync,
impl<T> Unpin for HeterogeneousShutdownSends<T>where
T: Unpin,
impl<T> UnsafeUnpin for HeterogeneousShutdownSends<T>
impl<T> UnwindSafe for HeterogeneousShutdownSends<T>where
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more