diff options
Diffstat (limited to 'crates/runner/src/util/checkable.rs')
-rw-r--r-- | crates/runner/src/util/checkable.rs | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/crates/runner/src/util/checkable.rs b/crates/runner/src/util/checkable.rs deleted file mode 100644 index 8528d29..0000000 --- a/crates/runner/src/util/checkable.rs +++ /dev/null @@ -1,37 +0,0 @@ -use std::{ - io::{Error, ErrorKind, Result}, - process::ExitStatus, -}; - -use nix::sys::wait; - -pub trait Checkable { - fn check(&self) -> Result<()>; -} - -impl Checkable for ExitStatus { - fn check(&self) -> Result<()> { - if self.success() { - Ok(()) - } else { - Err(Error::new( - ErrorKind::Other, - format!("Process exited with {}", self), - )) - } - } -} - -impl Checkable for wait::WaitStatus { - fn check(&self) -> Result<()> { - let message = match self { - wait::WaitStatus::Exited(_, 0) => return Ok(()), - wait::WaitStatus::Exited(_, code) => format!("Process exited with exit code: {}", code), - wait::WaitStatus::Signaled(_, signal, _) => { - format!("Process exited with signal: {}", signal) - } - _ => format!("Process in unexpected status: {:?}", self), - }; - Err(Error::new(ErrorKind::Other, message)) - } -} |