working cmd handler
This commit is contained in:
35
logging.hpp
35
logging.hpp
@@ -59,32 +59,45 @@ class log {
|
||||
return logger_impl.init();
|
||||
}
|
||||
|
||||
static void error(std::string_view message) {
|
||||
log_impl(LogLevel::ERROR, message);
|
||||
template <typename... Args>
|
||||
static void error(Args&&... args) {
|
||||
log_impl_begin(LogLevel::ERROR);
|
||||
log_impl(std::forward<Args&&>(args)...);
|
||||
}
|
||||
|
||||
static void debug(std::string_view message) {
|
||||
log_impl(LogLevel::DEBUG, message);
|
||||
template <typename... Args>
|
||||
static void debug(Args&&... args) {
|
||||
log_impl_begin(LogLevel::DEBUG);
|
||||
log_impl(std::forward<Args&&>(args)...);
|
||||
}
|
||||
|
||||
static void info(std::string_view message) {
|
||||
log_impl(LogLevel::INFO, message);
|
||||
template <typename... Args>
|
||||
static void info(Args&&... args) {
|
||||
log_impl_begin(LogLevel::INFO);
|
||||
log_impl(std::forward<Args&&>(args)...);
|
||||
}
|
||||
|
||||
static void set_loglevel(LogLevel level) { log_level = level; }
|
||||
|
||||
private:
|
||||
static void log_impl(LogLevel level, std::string_view message) {
|
||||
static bool log_impl_begin(LogLevel level) {
|
||||
if (log_level < level) {
|
||||
return;
|
||||
return false;
|
||||
}
|
||||
|
||||
// std::stringstream msg;
|
||||
// msg << get_loglevel_string(level) << ": " << message;
|
||||
logger->log(get_loglevel_string(level));
|
||||
logger->log(": ");
|
||||
logger->log(message);
|
||||
return true;
|
||||
}
|
||||
|
||||
template <typename... Args>
|
||||
static void log_impl(std::string_view message, Args&&... args) {
|
||||
logger->log(message);
|
||||
log_impl(std::forward<Args&&>(args)...);
|
||||
}
|
||||
|
||||
static void log_impl(std::string_view message) {
|
||||
logger->log(message);
|
||||
constexpr std::string_view carriage_return{"\r\n"};
|
||||
logger->log(carriage_return);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user