pub(crate) enum MoveError {
Show 15 variants
OpenChildren(Vec<String>),
NotOwner,
NotFound,
Ambiguous(Vec<IdCandidate>),
NotWaitingVerification,
NotWaitingQuestion,
WaitingOnLook,
CompletingWhileWaiting(String),
ClearingLookGate,
WithdrawNeedsReason,
DeletingLook(String),
ClosingLook(String),
AttestLeadOnly,
AttestNeedsEvidence,
NotAttested,
}Expand description
Why a move was refused.
Variants§
OpenChildren(Vec<String>)
Completing a root row while its children are open; cancel them first to abandon the epic. The children’s own SUBJECTS ride it: “cancel them first” names nothing a reader can go and do.
NotOwner
The caller does not own the row it is trying to wait.
NotFound
No row carries the id.
Ambiguous(Vec<IdCandidate>)
The stated id matched more than one row, each named.
NotWaitingVerification
The user’s verdict landed on a row that is not waiting on their look.
NotWaitingQuestion
The user answered a row that is not waiting on a question.
WaitingOnLook
A completion landed on a row waiting on the user’s own look: the look is what completes it.
CompletingWhileWaiting(String)
A completion landed on a row already waiting on something else
while the row’s own completion waits on the user: the gate would
trade the wait it holds for a look park and leave the status
reading waiting, so the move is refused by name instead. The
wait’s own words ride it.
ClearingLookGate
A patch would clear the look gate a row is bound by: the user’s own approve is what clears it.
WithdrawNeedsReason
A cancel landed on a row waiting on the user without the reason the withdraw records: the ask leaves with its why on the row, never silently.
DeletingLook(String)
A delete would remove a row waiting on the user: the ask is what is pending, not the row’s life, and the board’s answer or approve is what settles it. The row’s SUBJECT rides it so the refusal says which ask.
ClosingLook(String)
Closing a ROOT row would archive a row waiting on the user: removal by close is not a way to settle it either. The row’s SUBJECT rides it, as the delete’s does.
AttestLeadOnly
An attestation came from a session that is not the project’s lead: only the lead may stand behind the user’s recorded approval.
AttestNeedsEvidence
An attestation stated no quoted approval, so there is nothing to stand behind.
NotAttested
A reopen named a row carrying no lead attestation: there is no attested look to strike.
Trait Implementations§
impl Eq for MoveError
impl StructuralPartialEq for MoveError
Auto Trait Implementations§
impl Freeze for MoveError
impl RefUnwindSafe for MoveError
impl Send for MoveError
impl Sync for MoveError
impl Unpin for MoveError
impl UnsafeUnpin for MoveError
impl UnwindSafe for MoveError
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§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
§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
key and return true if they are equal.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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