pub enum Unported {
TransactionRecovery(PathBuf),
Lifecycle(Trigger),
PolicyNeeds {
policy: PolicyId,
needs: &'static str,
},
}Expand description
What:
One piece of unported work.
An enum is a closed set of named alternatives;
some
carry a value.
#[derive(...)] asks the compiler to generate copying,
debug
printing and ==.
Why:
Every refusal of this executable is one of these,
so the list of what stops a
command is in one place and a test can name the exact reason.
In TS you’d write (pseudocode):
type Unported =
| { kind: 'transaction-recovery'; directory: string }
| { kind: 'lifecycle'; trigger: PolicyTrigger }
| { kind: 'policy-needs'; policy: PolicyId; needs: string };Variants§
TransactionRecovery(PathBuf)
Recovering, or waiting for, the commit transactions recorded in this directory.
Lifecycle(Trigger)
The policy lifecycle of this trigger.
PolicyNeeds
Something one policy needs before it can be evaluated.
Trait Implementations§
impl Eq for Unported
impl StructuralPartialEq for Unported
Auto Trait Implementations§
impl Freeze for Unported
impl RefUnwindSafe for Unported
impl Send for Unported
impl Sync for Unported
impl Unpin for Unported
impl UnsafeUnpin for Unported
impl UnwindSafe for Unported
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,
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.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> ⓘ
Converts
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> ⓘ
Converts
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