1 stable release
Uses old Rust 2015
1.0.1 | Dec 2, 2017 |
---|
#2228 in Rust patterns
842 downloads per month
Used in 6 crates
(via mailin)
3KB
Ternary Operator
Rust doesn't support return (condition) ? if_true : if_false;
. This crate exports a macro that implements this feature.
fn is_ipv4(val: &str) -> i32 {
ternary!(val == "ipv4", 4, 16)
}
If you just want to copy the small macro, here you go 😅
#[macro_export]
macro_rules! ternary {
($condition: expr, $_true: expr, $_false: expr) => {
if $condition { $_true } else { $_false }
};
}
lib.rs
:
A dead simple ternary operator macro which allows you to write quick one-line returnes for a variety of types.
Examples
To use the ternary operator just invoke the ternary
macro
fn is_ipv4(val: &str) -> i32 {
ternary!(val == "ipv4", 4, 16)
}