pub enum CloseOutcome {
Closed,
AlreadyClosed,
AlreadyClosing,
Refused,
}Expand description
What a close did: wrote the record, found one already standing, found another caller inside the window, or was refused by the machine.
use majordomus_cli::session::CloseOutcome;
// a duplicate close is a diagnosable outcome, not an error: a provider's second end
// event is that provider's normal behaviour
assert!(CloseOutcome::Closed.wrote());
assert!(!CloseOutcome::AlreadyClosed.wrote());Variants§
Closed
This caller took the claim and published the record. Exactly one caller per episode ever sees this.
AlreadyClosed
A record for this episode already stands; this close added none.
AlreadyClosing
Another caller holds the claim at this moment. Nothing was written.
Refused
The episode is not in a state the machine lets it leave. Nothing was written.
Implementations§
Trait Implementations§
Source§impl Clone for CloseOutcome
impl Clone for CloseOutcome
Source§fn clone(&self) -> CloseOutcome
fn clone(&self) -> CloseOutcome
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for CloseOutcome
Source§impl Debug for CloseOutcome
impl Debug for CloseOutcome
Source§impl<'de> Deserialize<'de> for CloseOutcome
impl<'de> Deserialize<'de> for CloseOutcome
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 CloseOutcome
Source§impl JsonSchema for CloseOutcome
impl JsonSchema for CloseOutcome
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 inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl Ord for CloseOutcome
impl Ord for CloseOutcome
Source§fn cmp(&self, other: &CloseOutcome) -> Ordering
fn cmp(&self, other: &CloseOutcome) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for CloseOutcome
impl PartialEq for CloseOutcome
Source§fn eq(&self, other: &CloseOutcome) -> bool
fn eq(&self, other: &CloseOutcome) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for CloseOutcome
impl PartialOrd for CloseOutcome
Source§impl Serialize for CloseOutcome
impl Serialize for CloseOutcome
impl StructuralPartialEq for CloseOutcome
Auto Trait Implementations§
impl Freeze for CloseOutcome
impl RefUnwindSafe for CloseOutcome
impl Send for CloseOutcome
impl Sync for CloseOutcome
impl Unpin for CloseOutcome
impl UnsafeUnpin for CloseOutcome
impl UnwindSafe for CloseOutcome
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.