cvlr_asserts/
asserts.rs

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, >, $);