11 template <
typename... Ts>
void raw(std::ostream& os, Ts... msg) {
12 (std::cout << ... << msg);
13 std::cout << std::endl;
16 template <
typename... Ts>
void warning(Ts... msg) {
19 raw(std::cout,
"\033[0;33mWARN: ", msg...,
"\033[0m");
21 raw(std::cout,
"WARN: ", msg...);
25 template <
typename... Ts>
void error(Ts... msg) {
28 raw(std::cerr,
"\033[0;31mERROR: ", msg...,
"\033[0m");
30 raw(std::cerr,
"ERROR: ", msg...);
34 template <
typename... Ts>
void info(Ts... msg) {
36 raw(std::cout,
"INFO: ", msg...);
39 template <
typename... Ts>
void debug(Ts... msg) {
40 if (isDebug && !isQuiet) {
42 raw(std::cout,
"\033[0;32mDEBUG: ", msg...,
"\033[0m");
44 raw(std::cout,
"DEBUG: ", msg...);
55 bool isColored =
false;
void raw(std::ostream &os, Ts...msg)
Definition: logger.hpp:11
void setColored(bool b)
Definition: logger.hpp:50
void setDebug(bool b)
Definition: logger.hpp:49
void setQuiet(bool b)
Definition: logger.hpp:48
Logger logger
Definition: logger.hpp:58
void error(Ts...msg)
Definition: logger.hpp:25
void info(Ts...msg)
Definition: logger.hpp:34
void warning(Ts...msg)
Definition: logger.hpp:16
void debug(Ts...msg)
Definition: logger.hpp:39