#language #macro #utility #no-std #rust

no-std ternary-rs

A Rust library for emulating the ternary operator from C/C++ (among other languages)

1 stable release

1.0.0 Jan 15, 2021

#710 in #utility

Download history 53/week @ 2024-11-23 119/week @ 2024-11-30 127/week @ 2024-12-07 177/week @ 2024-12-14 11/week @ 2024-12-21 20/week @ 2024-12-28 167/week @ 2025-01-04 263/week @ 2025-01-11 196/week @ 2025-01-18 146/week @ 2025-01-25 284/week @ 2025-02-01 312/week @ 2025-02-08 155/week @ 2025-02-15 181/week @ 2025-02-22 173/week @ 2025-03-01 163/week @ 2025-03-08

749 downloads per month

MIT/Apache

6KB

ternary-rs

A Rust library for emulating the ternary operator from C/C++ (among other languages)

Exposes two macros that do the same thing:

  • Choose between two macros ifelse! and ternary
ifelse!(condition, true value, false value)
ternary!(condition, true value, false value)

Usage

Add this to your Cargo.toml:

[dependencies]
ternary-rs = "1.0.0"

Example

let cond = true;
let result = if_else!(cond, 1, 0);
assert_eq!(1, result);
assert_ne!(0, result);

// If you find if_else!() unclear, you can use the ternary!() macro and be explicit instead!
let result = ternary!(cond, 1, 0);
assert_eq!(1, result);
assert_ne!(0, result);

License

ternary-rs is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

No runtime deps