revm_interpreter/macros.rs
1macro_rules! debug_unreachable {
2 ($($t:tt)*) => {
3 if cfg!(debug_assertions) {
4 unreachable!($($t)*);
5 } else {
6 unsafe { core::hint::unreachable_unchecked() };
7 }
8 };
9}
10
11macro_rules! assume {
12 ($e:expr $(,)?) => {
13 if !$e {
14 debug_unreachable!(stringify!($e));
15 }
16 };
17
18 ($e:expr, $($t:tt)+) => {
19 if !$e {
20 debug_unreachable!($($t)+);
21 }
22 };
23}