pub struct ExitCode(_);
Expand description
This type represents the status code the current process can return to its parent under normal termination.
ExitCode
is intended to be consumed only by the standard library (via
Termination::report()
), and intentionally does not provide accessors like
PartialEq
, Eq
, or Hash
. Instead the standard library provides the
canonical SUCCESS
and FAILURE
exit codes as well as From<u8> for ExitCode
for constructing other arbitrary exit codes.
Portability
Numeric values used in this type don’t have portable meanings, and different platforms may mask different amounts of them.
For the platform’s canonical successful and unsuccessful codes, see
the SUCCESS
and FAILURE
associated items.
Differences from ExitStatus
ExitCode
is intended for terminating the currently running process, via
the Termination
trait, in contrast to ExitStatus
, which represents the
termination of a child process. These APIs are separate due to platform
compatibility differences and their expected usage; it is not generally
possible to exactly reproduce an ExitStatus from a child for the current
process after the fact.
Examples
ExitCode
can be returned from the main
function of a crate, as it implements
Termination
:
use std::process::ExitCode;
fn main() -> ExitCode {
if !check_foo() {
return ExitCode::from(42);
}
ExitCode::SUCCESS
}
RunImplementations
Trait Implementations
sourceimpl Termination for ExitCode
impl Termination for ExitCode
impl Copy for ExitCode
Auto Trait Implementations
impl RefUnwindSafe for ExitCode
impl Send for ExitCode
impl Sync for ExitCode
impl Unpin for ExitCode
impl UnwindSafe for ExitCode
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
Uses borrowed data to replace owned data, usually by cloning. Read more