log_level printing + change XO_LITERAL

This commit is contained in:
Roland Conybeare 2023-10-17 14:35:58 -04:00
commit 298f7a2888
3 changed files with 20 additions and 2 deletions

View file

@ -2,6 +2,7 @@
#pragma once
#include <iostream>
#include <cstdint>
namespace xo {
@ -54,6 +55,23 @@ namespace xo {
return (static_cast<std::uint32_t>(x) <= static_cast<std::uint32_t>(y));
}
inline std::ostream &
operator<<(std::ostream & os,
log_level x) {
switch(x) {
case log_level::never: os << "never"; break;
case log_level::verbose: os << "verbose"; break;
case log_level::chatty: os << "chatty"; break;
case log_level::info: os << "info"; break;
case log_level::warning: os << "warning"; break;
case log_level::error: os << "error"; break;
case log_level::severe: os << "severe"; break;
case log_level::always: os << "always"; break;
case log_level::silent: os << "silent"; break;
//default: os << "???"; break;
}
return os;
} /* operator<<*/
} /*namespace xo*/
/* end log_level.hpp */

View file

@ -23,7 +23,7 @@ namespace xo {
# define XO_DEBUG(debug_flag) XO_ENTER1(always, debug_flag)
# define XO_DEBUG2(debug_flag, name1) XO_ENTER2(always, debug_flag, name1)
# define XO_LITERAL(lvl, name1, name2) xo::scope_setup(xo::log_level::lvl, function_style::literal, name1, name2, __FILE__, __LINE__)
# define XO_LITERAL(lvl, name1, name2) xo::scope_setup(lvl, function_style::literal, name1, name2, __FILE__, __LINE__)
//# define XO_SSETUP0() xo::scope_setup(__FUNCTION__)
//# define XO_SSETUP0(lvl) xo::scope_setup(xo::log_level::lvl, xo::log_config::style, __PRETTY_FUNCTION__, __FILE__, __LINE__)