From 60b38f632e4d6e9416630de6120dafcac613a698 Mon Sep 17 00:00:00 2001 From: Frederico Linhares Date: Wed, 3 Aug 2022 15:25:29 -0300 Subject: feat Create a log system --- src/log.cpp | 43 +++++++++++++++++++++++++++++-------------- 1 file changed, 29 insertions(+), 14 deletions(-) (limited to 'src/log.cpp') diff --git a/src/log.cpp b/src/log.cpp index 201370c..78044c4 100644 --- a/src/log.cpp +++ b/src/log.cpp @@ -16,23 +16,38 @@ #include "log.hpp" -#include +#include -static mrb_value -cg_mLog_info(mrb_state *mrb, mrb_value self) +namespace Log { - const char *message; - mrb_get_args(mrb, "z", &message); - printf("%s\n", message); - - return self; -} void -cg_log_init(mrb_state *mrb) +Logger::message(Level lvl, const char* text) { - struct RClass *cg_m, *cg_mLog; - cg_m = mrb_module_get(mrb, "CandyGear"); - cg_mLog = mrb_define_module_under(mrb, cg_m, "Log"); - mrb_define_class_method(mrb, cg_mLog, "info", cg_mLog_info, MRB_ARGS_REQ(1)); + std::cout << "["; + switch(lvl) + { + case Level::Fatal: + std::cout << "\e[1;35mFatal\e[0;0m"; + break; + case Level::Error: + std::cout << "\e[1;31mError\e[0;0m"; + break; + case Level::Warning: + std::cout << "\e[1;33mWarning\e[0;0m"; + break; + case Level::Information: + std::cout << "\e[1;32mInformation\e[0;0m"; + break; + case Level::Debug: + std::cout << "\e[1;36mDebug\e[0;0m"; + break; + case Level::Trace: + std::cout << "\e[1;34mTrace\e[0;0m"; + break; + } + std::cout << "] "; + std::cout << text << std::endl; +} + } -- cgit v1.2.3