pub enum Join {
WaitForAll {},
Quorum {
count: usize,
},
FirstSuccess {},
}Expand description
What it takes for a wave to count as finished.
The default waits for every node, which is the only correct answer when later waves read every output. The other two exist for the fan-out shape the reference calls out: several nodes attacking the same question, where the run does not need all the answers to proceed.
Variants§
WaitForAll
Every node in the wave must finish.
Quorum
Proceed once this many nodes have finished successfully. Nodes still running are left to finish; their output is used if it arrives in time.
FirstSuccess
Proceed as soon as any one node succeeds.
Implementations§
Trait Implementations§
impl Copy for Join
Source§impl<'de> Deserialize<'de> for Join
impl<'de> Deserialize<'de> for Join
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Join
Source§impl JsonSchema for Join
impl JsonSchema for Join
Source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref keyword. Read moreimpl StructuralPartialEq for Join
Auto Trait Implementations§
impl Freeze for Join
impl RefUnwindSafe for Join
impl Send for Join
impl Sync for Join
impl Unpin for Join
impl UnsafeUnpin for Join
impl UnwindSafe for Join
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.