[][src]Trait die_exit::Die

pub trait Die<T> {
    pub fn die(self, msg: &str) -> T;
pub fn die_code(self, msg: &str, exit_code: i32) -> T; }

Die is a trait implemented on Result and Option to make exiting with messages and codes easy

Required methods

pub fn die(self, msg: &str) -> T[src]

Unwraps a Result or Option, yielding the content of an Ok or Some.

Exits

Calls process::exit(1) if the value is an Err or None, after printing the passed message to stderr.

Examples

Basic usage:

let x: Result<u32, &str> = Err("emergency failure");
x.die("strange error"); // prints `strange error` to stderr then exits with code 1
let x: Option<u32> = None;
x.die("strange error"); // prints `strange error` to stderr then exits with code 1

pub fn die_code(self, msg: &str, exit_code: i32) -> T[src]

Unwraps a Result or Option, yielding the content of an Ok or Some.

Exits

Calls process::exit(exit_code) if the value is an Err or None, after printing the passed message to stderr.

Examples

Basic usage:

let x: Result<u32, &str> = Err("emergency failure");
x.die_code("strange", 3); // prints `strange` to stderr then exits with code 3
let x: Option<u32> = None;
x.die_code("strange", 3); // prints `strange` to stderr then exits with code 3
Loading content...

Implementations on Foreign Types

impl<T, E> Die<T> for Result<T, E>[src]

impl<T> Die<T> for Option<T>[src]

Loading content...

Implementors

Loading content...