#[macro_export]
macro_rules! balanced_or {
($x:expr $(,)?) => { ::warp::Filter::boxed($x) };
($($x:expr),+ $(,)?) => {
balanced_or!(@internal ; $($x),+; $($x),+)
};
(@internal $($left:expr),*; $head:expr, $($tail:expr),+; $a:expr $(,$b:expr)?) => {
(balanced_or!($($left,)* $head)).or(balanced_or!($($tail),+))
};
(@internal $($left:expr),*; $head:expr, $($tail:expr),+; $a:expr, $b:expr, $($more:expr),+) => {
balanced_or!(@internal $($left,)* $head; $($tail),+; $($more),+)
};
}
#[cfg(debug_assertions)]
#[macro_export]
macro_rules! boxed_on_debug {
($x:expr) => {
::warp::Filter::boxed($x)
};
}
#[cfg(not(debug_assertions))]
#[macro_export]
macro_rules! boxed_on_debug {
($x:expr) => {
$x
};
}