5 unstable releases
0.3.1 | Mar 9, 2020 |
---|---|
0.3.0 | Mar 9, 2020 |
0.2.0 | Mar 9, 2020 |
0.1.1 | Sep 6, 2019 |
0.1.0 | Jul 26, 2019 |
#2455 in Rust patterns
27 downloads per month
8KB
129 lines
into-result
A simple convenience trait for converting something into a Result
or Option
.
Out of the box, this gives you improved error handling for
Command::output
Command::spawn
,
and Command::status
.
These methods only return Err
if the process fails to spawn;
further handling is required to check if the command has a successful exit status.
IntoResult
does that handling for you, folding both types of failure into one Result
:
use into_result::{IntoResult as _};
use std::process::Command;
Command::new("ls")
.spawn()
.into_result()
.expect("either failed to spawn command, or command returned non-zero exit status");
You can run the example to see what this looks like in practice.
into-result
also has no_std
support via no-default-features
.
You'll still get the IntoResult
trait and an impl for bool
.