Struct pretty_exec::ExitStatus 1.0.0[−][src]
pub struct ExitStatus(_);
Expand description
Describes the result of a process after it has terminated.
This struct is used to represent the exit status or other termination of a child process.
Child processes are created via the Command struct and their exit
status is exposed through the status method, or the wait method
of a Child process.
An ExitStatus represents every possible disposition of a process. On Unix this
is the wait status. It is not simply an exit status (a value passed to exit).
For proper error reporting of failed processes, print the value of ExitStatus or
ExitStatusError using their implementations of Display.
Implementations
impl ExitStatus[src]
impl ExitStatus[src]pub fn exit_ok(&self) -> Result<(), ExitStatusError>[src]
🔬 This is a nightly-only experimental API. (exit_status_error)
pub fn exit_ok(&self) -> Result<(), ExitStatusError>[src]exit_status_error)Was termination successful? Returns a Result.
Examples
#![feature(exit_status_error)] use std::process::Command; let status = Command::new("ls") .arg("/dev/nonexistent") .status() .expect("ls could not be executed"); println!("ls: {}", status); status.exit_ok().expect_err("/dev/nonexistent could be listed!");
pub fn success(&self) -> bool[src]
pub fn success(&self) -> bool[src]Was termination successful? Signal termination is not considered a success, and success is defined as a zero exit status.
Examples
use std::process::Command; let status = Command::new("mkdir") .arg("projects") .status() .expect("failed to execute mkdir"); if status.success() { println!("'projects/' directory created"); } else { println!("failed to create 'projects/' directory: {}", status); }
pub fn code(&self) -> Option<i32>[src]
pub fn code(&self) -> Option<i32>[src]Returns the exit code of the process, if any.
In Unix terms the return value is the exit status: the value passed to exit, if the
process finished by calling exit. Note that on Unix the exit status is truncated to 8
bits, and that values that didn’t come from a program’s call to exit may be invented the
runtime system (often, for example, 255, 254, 127 or 126).
On Unix, this will return None if the process was terminated by a signal.
ExitStatusExt is an
extension trait for extracting any such signal, and other details, from the ExitStatus.
Examples
use std::process::Command; let status = Command::new("mkdir") .arg("projects") .status() .expect("failed to execute mkdir"); match status.code() { Some(code) => println!("Exited with status code: {}", code), None => println!("Process terminated by signal") }
Trait Implementations
impl Clone for ExitStatus[src]
impl Clone for ExitStatus[src]pub fn clone(&self) -> ExitStatus[src]
pub fn clone(&self) -> ExitStatus[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)[src]
fn clone_from(&mut self, source: &Self)[src]Performs copy-assignment from source. Read more
impl Debug for ExitStatus[src]
impl Debug for ExitStatus[src]impl Display for ExitStatus[src]
impl Display for ExitStatus[src]impl ExitStatusExt for ExitStatus[src]
impl ExitStatusExt for ExitStatus[src]pub fn from_raw(raw: i32) -> ExitStatus[src]
pub fn from_raw(raw: i32) -> ExitStatus[src]Creates a new ExitStatus or ExitStatusError from the raw underlying integer status
value from wait Read more
pub fn signal(&self) -> Option<i32>[src]
pub fn signal(&self) -> Option<i32>[src]If the process was terminated by a signal, returns that signal. Read more
pub fn core_dumped(&self) -> bool[src]
pub fn core_dumped(&self) -> bool[src]unix_process_wait_more)If the process was terminated by a signal, says whether it dumped core.
pub fn stopped_signal(&self) -> Option<i32>[src]
pub fn stopped_signal(&self) -> Option<i32>[src]unix_process_wait_more)If the process was stopped by a signal, returns that signal. Read more
impl PartialEq<ExitStatus> for ExitStatus[src]
impl PartialEq<ExitStatus> for ExitStatus[src]pub fn eq(&self, other: &ExitStatus) -> bool[src]
pub fn eq(&self, other: &ExitStatus) -> bool[src]This method tests for self and other values to be equal, and is used
by ==. Read more
pub fn ne(&self, other: &ExitStatus) -> bool[src]
pub fn ne(&self, other: &ExitStatus) -> bool[src]This method tests for !=.
impl Copy for ExitStatus[src]
impl Eq for ExitStatus[src]
impl StructuralEq for ExitStatus[src]
impl StructuralPartialEq for ExitStatus[src]
Auto Trait Implementations
impl RefUnwindSafe for ExitStatus
impl Send for ExitStatus
impl Sync for ExitStatus
impl Unpin for ExitStatus
impl UnwindSafe for ExitStatus
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<X> Pipe for X
impl<X> Pipe for Ximpl<X> Pipe for X
impl<X> Pipe for Xfn pipe<Return, Function>(self, f: Function) -> Return where
Function: FnOnce(Self) -> Return,
fn pipe<Return, Function>(self, f: Function) -> Return where
Function: FnOnce(Self) -> Return, Apply f to self. Read more
fn pipe_ref<'a, Return, Function>(&'a self, f: Function) -> Return where
Function: FnOnce(&'a Self) -> Return,
fn pipe_ref<'a, Return, Function>(&'a self, f: Function) -> Return where
Function: FnOnce(&'a Self) -> Return, Apply f to &self. Read more
fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Return where
Function: FnOnce(&'a mut Self) -> Return,
fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Return where
Function: FnOnce(&'a mut Self) -> Return, Apply f to &mut self. Read more
fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: AsRef<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: AsRef<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return, Apply f to &self where f takes a single parameter of type Param
and Self implements trait AsRef<Param>. Read more
fn pipe_as_mut<'a, Param, Return, Function>(&'a mut self, f: Function) -> Return where
Self: AsMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
fn pipe_as_mut<'a, Param, Return, Function>(&'a mut self, f: Function) -> Return where
Self: AsMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return, Apply f to &mut self where f takes a single parameter of type Param
and Self implements trait AsMut<Param>. Read more
fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Deref<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Deref<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return, Apply f to &self where f takes a single parameter of type Param
and Self implements trait Deref<Param>. Read more
fn pipe_deref_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
fn pipe_deref_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return, Apply f to &mut self where f takes a single parameter of type Param
and Self implements trait DerefMut<Param>. Read more
impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, [src]type Owned = T
type Owned = TThe resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn to_owned(&self) -> T[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)[src]
pub fn clone_into(&self, target: &mut T)[src]🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more