//! Serial Printing /// # Print without newline /// /// Print formatted arguments without a newline #[macro_export] macro_rules! serial_print { ($($arg:tt)*) => (crate::_serial_print(format_args!($($arg)*))); } /// # Print with newline /// /// Print formatted arguments with a newline #[macro_export] macro_rules! serial_println { () => ($crate::serial_print!("\n")); ($($arg:tt)*) => ({ crate::_serial_print(format_args_nl!($($arg)*)); }) } /// # Debug print without newline /// /// Print formatted arguments without a newline but only with `verbose` feature #[macro_export] macro_rules! serial_vprint { ($($arg:tt)*) => ({ #[cfg(feature="verbose")] crate::_serial_print(format_args!($($arg)*)) }); } /// # Debug print with newline /// /// Print formatted arguments with a newline but only with `verbose` feature #[macro_export] macro_rules! serial_vprintln { () => ({ #[cfg(feature="verbose")] $crate::serial_print!("\n") }); ($($arg:tt)*) => ({ #[cfg(feature="verbose")] crate::_serial_print(format_args_nl!($($arg)*)); }) }