From 37daece60adb244548994ddfa59595bbe264895c Mon Sep 17 00:00:00 2001 From: elfein727 Date: Fri, 24 Dec 2021 01:39:24 -0800 Subject: [PATCH] logging macros --- ableos/src/log.rs | 60 ++++++++++++++++++++++++++++++++++------------- 1 file changed, 44 insertions(+), 16 deletions(-) diff --git a/ableos/src/log.rs b/ableos/src/log.rs index 3ef3863..03928b9 100644 --- a/ableos/src/log.rs +++ b/ableos/src/log.rs @@ -1,24 +1,52 @@ pub trait Log { - fn debug(val: &str); - fn error(); - fn info(val: &str); - fn trace(); + fn debug(val: &str); + fn error(); + fn info(val: &str); + fn trace(); } use crate::serial_print; use lliw::{Fg, Reset}; pub struct ANSISerialLogger; impl Log for ANSISerialLogger { - fn debug(val: &str) { - serial_print!("[{}Debug{}] {}\n", Fg::Blue, Reset, val); - } - fn error() { - todo!(); - } - fn info(val: &str) { - serial_print!("[{}Info{}] {}\n", Fg::Blue, Reset, val); - } - fn trace() { - todo!(); - } + fn debug(val: &str) { + serial_print!("[{}Debug{}] {}\n", Fg::Blue, Reset, val); + } + fn error() { + todo!(); + } + fn info(val: &str) { + serial_print!("[{}Info{}] {}\n", Fg::Blue, Reset, val); + } + fn trace() { + todo!(); + } +} + +#[macro_export] +macro_rules! debug { + ($($arg:tt)*) => ({ + log::ANSISerialLogger::debug(&format!($($arg)*)); + }) +} + +#[macro_export] +macro_rules! error { + ($($arg:tt)*) => ({ + log::ANSISerialLogger::error(&format!($($arg)*)); + }) +} + +#[macro_export] +macro_rules! info { + ($($arg:tt)*) => ({ + log::ANSISerialLogger::info(&format!($($arg)*)); + }) +} + +#[macro_export] +macro_rules! trace { + ($($arg:tt)*) => ({ + log::ANSISerialLogger::trace(&format!($($arg)*)); + }) }