1macro_rules! impl_bin_assert {
2 ($name: ident, $pred: tt, $dollar: tt) => {
3 #[macro_export]
4 macro_rules! $name {
5 ($lhs: expr, $rhs: expr $dollar(, $desc: literal)? ) => {{
6 cvlr::clog!(stringify!(assert $lhs $pred $rhs));
7 cvlr::clog!($lhs, $rhs);
8 $crate::cvlr_assert!($lhs $pred $rhs);
9 }};
10 }
11 pub use $name;
12 };
13}
14
15impl_bin_assert!(cvlr_assert_eq, ==, $);
16impl_bin_assert!(cvlr_assert_ne, !=, $);
17impl_bin_assert!(cvlr_assert_le, <=, $);
18impl_bin_assert!(cvlr_assert_lt, <, $);
19impl_bin_assert!(cvlr_assert_ge, >=, $);
20impl_bin_assert!(cvlr_assert_gt, >, $);