6 个版本
0.2.1 | 2023年4月8日 |
---|---|
0.2.0 | 2023年3月24日 |
0.1.1 | 2023年3月20日 |
0.0.2 | 2023年3月17日 |
#2598 in Rust 模式
92 每月下载量
7KB
82 行
Some To Err
此 crate 提供了一对 trait,用于轻松地将 Option
转换为 Result
,优雅地将 Some
值转换为 Err
,同时优雅地处理 None
值作为 Ok
。利用这些多才多艺的 trait,充分发挥 Rust 的错误处理能力。
使用方法
通过以下方式将此添加到您的 crate 中:
cargo add some-to-err
或者将此添加到您的 Cargo.toml
[dependencies]
some-to-err = "0.2.0"
然后
use some_to_err::ErrOr;
{
let some: Option<&str> = Some("Error");
let result = some.err_or(42);
assert_eq!(result, Err("Error"));
}
{
let none: Option<&str> = None;
let result = none.err_or(42);
assert_eq!(result, Ok(42));
}
use some_to_err::ErrOrElse;
{
let input: Option<&str> = None;
let result = input.err_or_else(|| "Ok");
assert_eq!(result, Ok("Ok"));
}
{
let input = Some("Error");
let result = input.err_or_else(|| "Ok");
assert_eq!(result, Err("Error"));
}