pub macro for_sequence {
( $pattern:pat in ($($iter:expr),+) $do:block) => {
$(for $pattern in $iter $do)+
}
}
pub macro show {
($e:expr) => {
println!("{}: {:?}", stringify!($e), $e);
}
}
pub macro eshow {
($e:expr) => {
eprintln!("{}: {:?}", stringify!($e), $e);
}
}
pub macro pretty {
($e:expr) => {
println!("{}: {:#?}", stringify!($e), $e);
}
}
pub macro epretty {
($e:expr) => {
eprintln!("{}: {:#?}", stringify!($e), $e);
}
}
pub macro display {
($e:expr) => {
println!("{}: {}", stringify!($e), $e);
}
}
pub macro edisplay {
($e:expr) => {
eprintln!("{}: {}", stringify!($e), $e);
}
}
pub macro bits {
($e:expr) => {
let e = $e;
println!("{}: {:02$b}", stringify!($e), e, 8 * core::mem::size_of_val (&e));
}
}
pub macro ebits {
($e:expr) => {
let e = $e;
eprintln!("{}: {:02$b}", stringify!($e), e, 8 * core::mem::size_of_val (&e));
}
}
pub macro hex {
($e:expr) => {
println!("{}: {:x}", stringify!($e), $e);
}
}
pub macro ehex {
($e:expr) => {
println!("{}: {:x}", stringify!($e), $e);
}
}
pub macro address {
($e:expr) => {
println!("{}: {:p}", stringify!($e), $e);
}
}
pub macro eaddress {
($e:expr) => {
eprintln!("{}: {:p}", stringify!($e), $e);
}
}