ExitStatus

Enum ExitStatus 

Source
pub enum ExitStatus {
    Exited(u32),
    Signaled(u8),
    Other(i32),
    Undetermined,
}
Expand description

Exit status of a process.

Variants§

§

Exited(u32)

The process exited with the specified exit code.

Note that the exit code is limited to a much smaller range on most platforms.

§

Signaled(u8)

The process exited due to a signal with the specified number.

This variant is never created on Windows, where signals of Unix kind do not exist.

§

Other(i32)

The process exit status cannot be described by the preceding two variants.

This should not occur in normal operation.

§

Undetermined

It is known that the process has completed, but its exit status is unavailable.

This should not occur in normal operation, but is possible if for example some foreign code calls waitpid() on the PID of the child process.

Implementations§

Source§

impl ExitStatus

Source

pub fn success(self) -> bool

True if the exit status of the process is 0.

Source

pub fn is_killed_by<T: Eq + From<u8>>(self, signum: T) -> bool

True if the subprocess was killed by a signal with the specified number.

You can pass the concrete libc signal numbers to this function, such as status.is_killed_by(libc::SIGABRT).

Trait Implementations§

Source§

impl Clone for ExitStatus

Source§

fn clone(&self) -> ExitStatus

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for ExitStatus

Source§

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

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

impl PartialEq for ExitStatus

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for ExitStatus

Source§

impl Eq for ExitStatus

Source§

impl StructuralPartialEq for ExitStatus

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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.