diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2025-03-05 23:44:56 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2025-03-07 18:03:03 +0800 |
| commit | c37bd3e34f5840773949bb55848cda3af6688d20 (patch) | |
| tree | 1d31ea7c3cf8811ea294da9c094027a9e805dfcb /src/log.cpp | |
| parent | aa21e4ea0687fd0c8d333161f5ec31a580512e9e (diff) | |
refactor: logging system
Diffstat (limited to 'src/log.cpp')
| -rw-r--r-- | src/log.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/log.cpp b/src/log.cpp new file mode 100644 index 0000000..8cd3ded --- /dev/null +++ b/src/log.cpp @@ -0,0 +1,26 @@ +#include "log.hpp" + +void log(eLogLevel level, std::string str) { + // Use CFormatter for the prefix part + std::string prefixed; + switch (level) { + case INFO: + prefixed = CFormatter::fmt<const std::string &>(eFormatType::STANDARD, "{}", str); + str = useColors ? "\033[1;32m" + prefixed + "\033[0m" : prefixed; // green + break; + case WARN: + prefixed = CFormatter::fmt<const std::string &>(eFormatType::SYSTEM, "{}", str); + str = useColors ? "\033[1;33m" + prefixed + "\033[0m" : prefixed; // yellow + break; + case ERROR: + prefixed = CFormatter::fmt<const std::string &>(eFormatType::ERROR, "{}", str); + str = useColors ? "\033[1;31m" + prefixed + "\033[0m" : prefixed; // red + break; + case FATAL: + prefixed = CFormatter::fmt<const std::string &>(eFormatType::ERROR, "{}", str); + str = useColors ? "\033[1;35m" + prefixed + "\033[0m" : prefixed; // magenta + break; + } + + std::println("{}", str); // Changed to print since we're managing the newline ourselves +} |
