3 个不稳定版本
0.1.1 | 2020年8月15日 |
---|---|
0.1.0 | 2020年8月15日 |
0.0.0 | 2020年8月15日 |
#15 在 #composing
6KB
55 行
chainable-if
此crate提供if_chain!
宏,这是一个用于编写长链if-else if-else语句的宏。
它旨在提供一种替代使用match
编写if链的方法,例如
match () {
_ if some_condition => ...,
_ if some_other_condition => ...,
_ if some_third_condition => ...,
_ => ...,
}
示例用法
尽管主要用于长链,但if_chain!
也可以用于简单的if-else情况,例如
if_chain! {
| some_condition => (/* some_condition is true */),
| _ => (/* the else branch */)
}
前面的match
示例可以重写为
if_chain! {
| some_condition => ...,
| some_other_condition => ...,
| some_third_condition => ...,
}
请注意,不需要else
分支,因为if_chain!
只是简单地展开为
if some_condition {
...
} else if some_other_condition }
...
} else if some_third_condition {
...
}