pub enum Decided {
By(Operator),
OnExpiry(OnExpiry),
}Expand description
Who answered, and on what footing.
Two variants rather than one name with reserved spellings, because they are
two different facts. system:unattended in an actor field puts nobody
answered into the shape of somebody did: a reader has to know the
convention to tell an approval from a timeout, every consumer re-implements
the same prefix test, and nothing stops a deployment having a principal by
that name. I14 forbids the flattening for the same
reason ActorView is two fields.
Variants§
By(Operator)
A person answered, with what established their name.
OnExpiry(OnExpiry)
Nobody answered inside the window, and the declared
OnExpiry was applied.
Implementations§
Source§impl Decided
impl Decided
Sourcepub const fn operator(&self) -> Option<&Operator>
pub const fn operator(&self) -> Option<&Operator>
The operator who answered, when a person did.
None for an expiry, and that is the distinction callers need: a
four-eyes check has nobody to exclude when nobody decided, and an
eligibility check run against a fabricated name would pass or fail for
reasons unrelated to the control.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Decided
impl<'de> Deserialize<'de> for Decided
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>,
impl StructuralPartialEq for Decided
Auto Trait Implementations§
impl Freeze for Decided
impl RefUnwindSafe for Decided
impl Send for Decided
impl Sync for Decided
impl Unpin for Decided
impl UnsafeUnpin for Decided
impl UnwindSafe for Decided
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
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<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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