1 个不稳定版本
0.1.0 | 2023 年 10 月 20 日 |
---|
2148 在 Rust 模式
29 每月下载次数
5KB
unwrap_let!
一个用于快速解包可证明模式的 Rust 宏。
安装
通过运行 cargo add unwrap_let
或编辑 Cargo.toml
将 unwrap_let
添加到您的依赖项中。
[dependencies]
unwrap_let = "0.1.0"
然后,通过 [macro_use]
或一个 use
语句来导入 unwrap_let
宏。
// Option 1:
// Having this line in `lib.rs` or `main.rs` allows you to use `unwrap_let` in
// any file in your project without additional `use` statement.
#[macro_use]
extern crate unwrap_let;
// Option 2:
// Or, you can import it in each file that uses this macro.
use unwrap_let::unwrap_let;
示例
let val = Some(123);
unwrap_let!(Some(x) = val);
// `x` is defined
assert_eq!(x, 123);
enum Integer {
Signed(i64),
Unsigned(u64),
}
fn negate(unchecked_num: Integer) -> Integer {
unwrap_let!(Integer::Signed(num) = unchecked_num, "expected a signed integer");
Integer::Signed(-num)
}
最低支持的 Rust 版本
unwrap_let
在内部使用 "let-else" 语句,该语句于 Rust 1.65 (2022 年 11 月) 中引入。
许可证
本项目采用 (MIT 许可证)[./LICENSE] 许可。