Skip to main content

Outcome

Enum Outcome 

Source
pub enum Outcome {
    Cancelled,
    Exited(ExitStatus),
    Incomplete,
}
Expand description

The way in which the run of an external program ended

Every run that starts also ends, and a consumer that shows a running program needs to know how. The variants separate the three ends that a consumer treats differently: the program ran to its end, cancellation stopped it, or Clawless could not collect a result for it.

A program that ended without success is Exited, not a failure. The check mode of a formatter ends with a non-zero code when it finds a file to format, and that is an answer and not a fault.

§Examples

use clawless_core::event::process::Outcome;

assert_eq!(Outcome::Cancelled.to_string(), "was cancelled before it ended");

Variants§

§

Cancelled

Cancellation stopped the program before it ended

Clawless killed the program, so it has no exit status. The output that reached the consumer before this point is everything the program wrote.

§

Exited(ExitStatus)

The program ran to its end

The status says how it ended. A program that a signal stopped carries no exit code, which ExitStatus::code reports as None.

§

Incomplete

The run started and produced no result

A stream of the program could not be read, the end of the program could not be waited for, or the events of the run could no longer be reported. The program itself may well have done its work.

Trait Implementations§

Source§

impl Clone for Outcome

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Outcome

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for Outcome

States how the run ended, as the end of a sentence about the command

The text follows the command in ProcessEvent, which is why it starts with a verb and not with a subject.

Source§

fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for Outcome

Source§

impl PartialEq for Outcome

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Outcome

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.