Macro rect

Source
macro_rules! rect {
    ($x:tt $($x_unit:ident)?) => { ... };
    (
        $left:tt $($left_unit:ident)?, $top:tt $($top_unit:ident)?,
        $right:tt $($right_unit:ident)?, $bottom:tt $($bottom_unit:ident)? $(,)?
    ) => { ... };
    ($x:tt $($x_unit:ident)?, $y:tt $($y_unit:ident)?) => { ... };
}
Expand description

Define a bevy::ui::UiRect similarly to how you would define it in CSS.

§Syntax

// one argument
rect!(num1 val1) == Rect::all(unit!(num1 val1))

// two arguments
rect!(num1 val1, num2 val2) == Rect {
    left: unit!(num1 val1),
    right: unit!(num1 val1),
    top: unit!(num2 val2),
    bottom: unit!(num2 val2),
}

// four arguments
rect!(num1 val1, num2 val2, num3 val3, num4 val4) == Rect {
    left: unit!(num1 val1),
    top: unit!(num2 val2),
    right: unit!(num3 val3),
    bottom: unit!(num4 val4),
}