userspace/macros/latent/expressions/
upperbound.rs

1#[macro_export]
2macro_rules! expressions_upperbound {
3    // caso base: apenas um argumento
4    ($x:expr) => { $x };
5    // caso recursivo: pelo menos dois
6    ($x:expr, $($rest:expr),+) => {
7        {
8            let y = expressions_upperbound!($($rest),+);
9            if $x > y { $x } else { y }
10        }
11    };
12}
13pub use expressions_upperbound;