#[non_exhaustive]pub enum CompositeBody {
AllOf {
members: Vec<ResumeCondition>,
},
Count {
n: u32,
count_kind: CountKind,
matcher: Option<SignalMatcher>,
waitpoints: Vec<String>,
},
}Expand description
RFC-013 reserves this enum slot; RFC-014 populates it with the
concrete composition vocabulary (AllOf + Count). The enum is
#[non_exhaustive] so RFC-016 or later RFCs may add variants
(AnyOf has been explicitly rejected per RFC-014 §2.3 in favour of
Count { n: 1, .. }; the guard exists for orthogonal future work).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
AllOf
All listed sub-conditions must be satisfied. Order-independent. Once satisfied, further signals to member waitpoints are observed but do not re-open satisfaction. RFC-014 §2.1.
Fields
members: Vec<ResumeCondition>Count
At least n distinct satisfiers (by CountKind) must match.
matcher optionally constrains participating signals; None
lets any signal on any of waitpoints count. RFC-014 §2.1.
Implementations§
Source§impl CompositeBody
impl CompositeBody
Sourcepub fn all_of(
members: impl IntoIterator<Item = ResumeCondition>,
) -> CompositeBody
pub fn all_of( members: impl IntoIterator<Item = ResumeCondition>, ) -> CompositeBody
AllOf { members } constructor (RFC-014 §10.3 SDK surface).
Sourcepub fn count(
n: u32,
count_kind: CountKind,
matcher: Option<SignalMatcher>,
waitpoints: impl IntoIterator<Item = String>,
) -> CompositeBody
pub fn count( n: u32, count_kind: CountKind, matcher: Option<SignalMatcher>, waitpoints: impl IntoIterator<Item = String>, ) -> CompositeBody
Count constructor with explicit kind + waitpoint set.
Trait Implementations§
Source§impl Clone for CompositeBody
impl Clone for CompositeBody
Source§fn clone(&self) -> CompositeBody
fn clone(&self) -> CompositeBody
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CompositeBody
impl Debug for CompositeBody
Source§impl<'de> Deserialize<'de> for CompositeBody
impl<'de> Deserialize<'de> for CompositeBody
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CompositeBody, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CompositeBody, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CompositeBody
impl PartialEq for CompositeBody
Source§impl Serialize for CompositeBody
impl Serialize for CompositeBody
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for CompositeBody
impl StructuralPartialEq for CompositeBody
Auto Trait Implementations§
impl Freeze for CompositeBody
impl RefUnwindSafe for CompositeBody
impl Send for CompositeBody
impl Sync for CompositeBody
impl Unpin for CompositeBody
impl UnsafeUnpin for CompositeBody
impl UnwindSafe for CompositeBody
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more