diff options
Diffstat (limited to 'src/log.rs')
-rw-r--r-- | src/log.rs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/log.rs b/src/log.rs new file mode 100644 index 0000000..99601b3 --- /dev/null +++ b/src/log.rs @@ -0,0 +1,41 @@ +/* + Copyright 2023 Gabriel Jensen. + + This file is part of aas. + + aas is free software: you can redistribute it + and/or modify it under the terms of the GNU + General Public License as published by the Free + Software Foundation, either version 3 of the + License, or (at your option) any later version. + + aas is distributed in the hope that it will + be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU + General Public License along with aas. If not, + see <https://www.gnu.org/licenses/>. +*/ + +#[macro_export] +macro_rules! log { + (error, $($message: tt)*) => {{ + eprintln!("\u{1B}[1m\u{1B}[91merror\u{1B}[0m: {}", format!($($message)?)); + }}; + + (note, $($message: tt)*) => {{q + eprintln!("\u{1B}[1m\u{1B}[95mnote\u{1B}[0m: {}", format!($($message)?)); + }}; + + (status, $($message: tt)*) => {{ + eprintln!("{}", format!($($message)?)); + }}; + + (warning, $($message: tt)*) => {{ + use crate::log::log; + eprintln!("\u{1B}[1m\u{1B}[93mwarning\u{1B}[0m: {}", format!($($message)?)); + }}; +} |