pub enum SessionDisposition {
Success,
Failure,
}Expand description
Session-wide pass/fail disposition. Projected from the
per-phase statuses by walking every populated
PhaseOutcome on the scene tree.
SessionDisposition is the single source of truth for
“what happened?” — drives the process exit code, the
terminating status line, the nmbrs replay header, and
the (future) session_disposition readout in
SRD-63’s on_session_end slot.
SRD-76 §“SessionDisposition” — past callers each did their own ad-hoc walk over phase state with subtly different rules (was Skipped a pass? was Ctrl-C a failure?). This enum centralises the answer.
Variants§
Success
Every phase that ran terminated cleanly (Completed, Skipped, or CursorSuspended). Interrupted-via-signal sessions where no phase actually failed land here — interrupted ≠ failed from the operator’s perspective.
Failure
At least one phase’s outcome carries Validity::Failed. The
realtime status surface and nmbrs replay render
this in red; CI / scripted callers observe via the
process exit code (non-zero) and the JSON output.
Implementations§
Trait Implementations§
Source§impl Clone for SessionDisposition
impl Clone for SessionDisposition
impl Copy for SessionDisposition
Source§impl Debug for SessionDisposition
impl Debug for SessionDisposition
Source§impl<'de> Deserialize<'de> for SessionDisposition
impl<'de> Deserialize<'de> for SessionDisposition
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 Eq for SessionDisposition
Source§impl PartialEq for SessionDisposition
impl PartialEq for SessionDisposition
Source§impl Serialize for SessionDisposition
impl Serialize for SessionDisposition
impl StructuralPartialEq for SessionDisposition
Auto Trait Implementations§
impl Freeze for SessionDisposition
impl RefUnwindSafe for SessionDisposition
impl Send for SessionDisposition
impl Sync for SessionDisposition
impl Unpin for SessionDisposition
impl UnsafeUnpin for SessionDisposition
impl UnwindSafe for SessionDisposition
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<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§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
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> ⓘ
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