pub const EMPTY: isize = -1;
pub fn flip(i: isize) -> isize {
-i - 2
}
pub fn implies(p: bool, q: bool) -> bool {
!p || q
}
#[cfg(feature = "debug1")]
macro_rules! debug1_print {
($( $args:expr ),*) => { print!( $( $args ),* ); }
}
#[cfg(not(feature = "debug1"))]
macro_rules! debug1_print {
($( $args:expr ),*) => {};
}
#[cfg(feature = "debug1")]
macro_rules! debug1_println {
($( $args:expr ),*) => { println!( $( $args ),* ); }
}
#[cfg(not(feature = "debug1"))]
macro_rules! debug1_println {
($( $args:expr ),*) => {};
}
#[cfg(feature = "debug2")]
macro_rules! debug2_print {
($( $args:expr ),*) => { print!( $( $args ),* ); }
}
#[cfg(not(feature = "debug2"))]
macro_rules! debug2_print {
($( $args:expr ),*) => {};
}
#[cfg(feature = "debug2")]
macro_rules! debug2_println {
($( $args:expr ),*) => { println!( $( $args ),* ); }
}
#[cfg(not(feature = "debug2"))]
macro_rules! debug2_println {
($( $args:expr ),*) => {};
}
#[cfg(feature = "debug3")]
macro_rules! debug3_print {
($( $args:expr ),*) => { print!( $( $args ),* ); }
}
#[cfg(not(feature = "debug3"))]
macro_rules! debug3_print {
($( $args:expr ),*) => {};
}
#[cfg(feature = "debug3")]
macro_rules! debug3_println {
($( $args:expr ),*) => { println!( $( $args ),* ); }
}
#[cfg(not(feature = "debug3"))]
macro_rules! debug3_println {
($( $args:expr ),*) => {};
}
#[cfg(feature = "debug4")]
macro_rules! debug4_print {
($( $args:expr ),*) => { print!( $( $args ),* ); }
}
#[cfg(not(feature = "debug4"))]
macro_rules! debug4_print {
($( $args:expr ),*) => {};
}
#[cfg(feature = "debug4")]
macro_rules! debug4_println {
($( $args:expr ),*) => { println!( $( $args ),* ); }
}
#[cfg(not(feature = "debug4"))]
macro_rules! debug4_println {
($( $args:expr ),*) => {};
}
pub(crate) use {
debug1_print, debug1_println, debug2_print, debug2_println, debug3_print, debug3_println,
debug4_print, debug4_println,
};