#ternary #operator #inline #if

ternop

一个实现 Rust 三元运算符的小宏

1 个稳定版本

使用旧的 Rust 2015

1.0.1 2017年12月2日

2228Rust 模式

Download history 336/week @ 2024-03-13 255/week @ 2024-03-20 207/week @ 2024-03-27 336/week @ 2024-04-03 260/week @ 2024-04-10 235/week @ 2024-04-17 381/week @ 2024-04-24 372/week @ 2024-05-01 222/week @ 2024-05-08 243/week @ 2024-05-15 287/week @ 2024-05-22 217/week @ 2024-05-29 242/week @ 2024-06-05 181/week @ 2024-06-12 148/week @ 2024-06-19 227/week @ 2024-06-26

842 每月下载量
6 个 crate 中使用(通过 mailin

MIT/X11 许可证

3KB

三元运算符

Rust 不支持 return (condition) ? if_true : if_false;。这个 crate 导出一个宏来实现这个功能。

fn is_ipv4(val: &str) -> i32 {
    ternary!(val == "ipv4", 4, 16)
}

如果您只想复制这个小宏,请看这里 😅

#[macro_export]
macro_rules! ternary {
    ($condition: expr, $_true: expr, $_false: expr) => {
        if $condition { $_true } else { $_false }
    };
}

lib.rs:

一个简单的三元运算符宏,允许您快速编写一行返回各种类型的代码。

示例

要使用三元运算符,只需调用 ternary

fn is_ipv4(val: &str) -> i32 {
    ternary!(val == "ipv4", 4, 16)
}

无运行时依赖