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

@ -38,7 +38,7 @@ xo_add_headeronly_library(indentlog)
# ----------------------------------------------------------------
# standard install + provide find_package() support
xo_install_library2(indentlog)
xo_install_library3(indentlog ${PROJECT_NAME}Targets)
xo_install_include_tree()
xo_export_cmake_config(${PROJECT_NAME} ${PROJECT_VERSION} ${PROJECT_NAME}Targets)

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__)