diff options
author | Frederico Linhares <fred@linhares.blue> | 2022-08-03 15:25:29 -0300 |
---|---|---|
committer | Frederico Linhares <fred@linhares.blue> | 2022-08-03 15:25:29 -0300 |
commit | 60b38f632e4d6e9416630de6120dafcac613a698 (patch) | |
tree | 458c35df273166b68a3fd26095226b88bba9371e /src/log.hpp | |
parent | f88712a929ee3543f8e1d45c6071f676df339cdb (diff) |
feat Create a log system
Diffstat (limited to 'src/log.hpp')
-rw-r--r-- | src/log.hpp | 35 |
1 files changed, 32 insertions, 3 deletions
diff --git a/src/log.hpp b/src/log.hpp index 90e632c..2856f20 100644 --- a/src/log.hpp +++ b/src/log.hpp @@ -17,9 +17,38 @@ #ifndef CANDY_GEAR_LOG_H #define CANDY_GEAR_LOG_H 1 -#include "core.hpp" +#include <string> -void -cg_log_init(mrb_state *mrb); +#define CANDY_GEAR_LOG_LEVEL_FATAL 0 +#define CANDY_GEAR_LOG_LEVEL_ERROR 1 +#define CANDY_GEAR_LOG_LEVEL_WARNING 2 +#define CANDY_GEAR_LOG_LEVEL_INFORMATION 3 +#define CANDY_GEAR_LOG_LEVEL_DEBUG 4 +#define CANDY_GEAR_LOG_LEVEL_TRACE 5 + +namespace Log +{ + +enum class Level +{ + Fatal = CANDY_GEAR_LOG_LEVEL_FATAL, + Error = CANDY_GEAR_LOG_LEVEL_ERROR, + Warning = CANDY_GEAR_LOG_LEVEL_WARNING, + Information = CANDY_GEAR_LOG_LEVEL_INFORMATION, + Debug = CANDY_GEAR_LOG_LEVEL_DEBUG, + Trace = CANDY_GEAR_LOG_LEVEL_TRACE +}; + +struct Logger +{ + + void + message(Level lvl, const char* text); + + inline void + message(Level lvl, const std::string &text) {message(lvl, text.c_str());} +}; + +} #endif /* CANDY_GEAR_LOG_H */ |