Loading...
Searching...
No Matches
3#define USE_TRAIT(Class) \
5 template<typename, typename> \
6 friend struct rstd::Impl; \
7 template<typename _USE_TRAIT_T> \
8 requires Impled<Self, cmp::PartialEq<_USE_TRAIT_T>> \
9 friend bool operator==(const Self& a, const _USE_TRAIT_T& b) noexcept { \
10 return as<cmp::PartialEq<_USE_TRAIT_T>>(a).eq(b); \
14# define debug_assert(...) ((void)0)
15# define debug_assert_eq(...) ((void)0)
17# define debug_assert(EXP, ...) \
18 if (! (EXP)) rstd::assert_fmt(#EXP __VA_OPT__(, ) __VA_ARGS__)
19# define debug_assert_eq(A, B) \
20 if ((A) != (B)) rstd::assert_raw("(" #A " == " #B ")", {})
23#define assert(EXP, ...) \
24 if (! (EXP)) rstd::assert_fmt(#EXP __VA_OPT__(, ) __VA_ARGS__)
25#define assert_eq(A, B) \
26 if ((A) != (B)) rstd::assert_raw("(" #A " == " #B ")", {})