1 个不稳定版本

使用旧 Rust 2015

0.1.0 2015 年 12 月 3 日

#4#libstd

WTFPL 许可证

3KB

索马

一个简单的宏,用于简化 Rust 中的 Option 处理。

这是我针对 RFC 1303 问题的回答。

安装

与其他 Crates 一样,您应该使用 cargo-edit,然后

cargo add soma

使用

这相当于 try! 宏,来自 libstd

#[macro_use]
extern crate soma;

//

let foo: Option<usize> = //

let bar: usize = try_some!(foo); // This will return with `None` if `foo` is
                                 // `None`
// equivalent to:
//
// let bar: usize = match foo {
//     Some(val) => val,
//     None => return None,
// }

let baz: usize - try_some!(foo => return); // This will break execution if `foo`
                                           // is `None`
// equivalent to
//
// let baz: usize = match foo {
//     Some(val) => val,
//     None => return,
// }

许可证

查看 LICENSE 文件。

无运行时依赖

功能