diff options
Diffstat (limited to 'ctr-std/src/sys/unix/process.rs')
| -rw-r--r-- | ctr-std/src/sys/unix/process.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ctr-std/src/sys/unix/process.rs b/ctr-std/src/sys/unix/process.rs index f058aa9..06dafc6 100644 --- a/ctr-std/src/sys/unix/process.rs +++ b/ctr-std/src/sys/unix/process.rs @@ -16,6 +16,11 @@ use sys::pipe::AnonPipe; use sys::{unsupported, Void}; use sys_common::process::{CommandEnv, DefaultEnvKey}; +use libc::c_int; + +const EXIT_SUCCESS: c_int = 0; +const EXIT_FAILURE: c_int = 1; + //////////////////////////////////////////////////////////////////////////////// // Command //////////////////////////////////////////////////////////////////////////////// @@ -149,3 +154,16 @@ impl Process { match self.0 {} } } + +#[derive(PartialEq, Eq, Clone, Copy, Debug)] +pub struct ExitCode(u8); + +impl ExitCode { + pub const SUCCESS: ExitCode = ExitCode(EXIT_SUCCESS as _); + pub const FAILURE: ExitCode = ExitCode(EXIT_FAILURE as _); + + #[inline] + pub fn as_i32(&self) -> i32 { + self.0 as i32 + } +} |