2 个不稳定版本
| 0.2.0 | 2023 年 1 月 1 日 |
|---|---|
| 0.1.0 | 2023 年 1 月 1 日 |
#2993 在 Rust 模式
每月 98 次下载
7KB
65 行
macro-map
lib.rs:
这是一个小巧的工具集,使用宏来代替函数调用回调,实现了 Option::ok_or_else 和 Result::map_err。
这减少了当你不能使用上述函数时(因为你需要的错误处理逻辑需要将某些值移动到闭包中,而你无法承担这样的开销),所需的样板代码。
人们通常会通过 .clone()-ing 要传递到闭包中的值来解决这个问题,但这很糟糕,因为
- 你需要
.clone()项,而这并不总是可能的; .clone()实际上并不必要,你可以使用手动match重写代码,而不需要所有权转移。
但是写一个 match 语句很啰嗦,谁会想要那样呢?!这正是这个 crate 出现的地方。
为了获得最佳的外观和感觉,请与 postfix-macros crate 结合使用。