![]() |
Scarab
v3.4.4
Project 8 C++ Utility Library
|
Contains the logger class and macros, based on Kasper's KLogger class. More...
#include "macros.hh"
#include "scarab_api.hh"
#include <memory>
#include <cstring>
#include <iostream>
#include <sstream>
Go to the source code of this file.
Classes | |
class | logger |
struct | logger::Location |
Namespaces | |
scarab | |
Macros | |
#define | LOGGER_UTILITY_MACROS_ |
#define | msvc_bug_fix(m, args) m args |
#define | expand(x) x |
#define | va_num_args(...) expand( va_num_args_impl(__VA_ARGS__, 5,4,3,2,1)) |
#define | va_num_args_impl(_1, _2, _3, _4, _5, N, ...) N |
#define | macro_dispatcher(func, ...) macro_dispatcher_(func, va_num_args(__VA_ARGS__)) |
#define | macro_dispatcher_(func, nargs) macro_dispatcher__(func, nargs) |
#define | macro_dispatcher__(func, nargs) func ## nargs |
#define | COLOR_NORMAL "0" |
#define | COLOR_BRIGHT "1" |
#define | COLOR_FOREGROUND_RED "31" |
#define | COLOR_FOREGROUND_GREEN "32" |
#define | COLOR_FOREGROUND_YELLOW "33" |
#define | COLOR_FOREGROUND_BLUE "34" |
#define | COLOR_FOREGROUND_CYAN "36" |
#define | COLOR_FOREGROUND_WHITE "37" |
#define | COLOR_PREFIX "\033[" |
#define | COLOR_SUFFIX "m" |
#define | COLOR_SEPARATOR ";" |
#define | __DEFAULT_LOGGER scarab::logger::GetRootLogger() |
#define | __LOG_LOCATION scarab::logger::Location(__FILE__, __FUNC__, __LINE__) |
#define | __LOG_LOG_4(I, L, M, O) |
#define | __LOG_LOG_3(I, L, M) __LOG_LOG_4(I,L,M,false) |
#define | __LOG_LOG_2(L, M) __LOG_LOG_4(__DEFAULT_LOGGER,L,M,false) |
#define | __LOG_LOG_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,false) |
#define | __LOG_TRACE_2(I, M) __LOG_LOG_4(I,Trace,M,false) |
#define | __LOG_TRACE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Trace,M,false) |
#define | __LOG_DEBUG_2(I, M) __LOG_LOG_4(I,Debug,M,false) |
#define | __LOG_DEBUG_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,false) |
#define | __LOG_INFO_2(I, M) __LOG_LOG_4(I,Info,M,false) |
#define | __LOG_INFO_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Info,M,false) |
#define | __LOG_PROG_2(I, M) __LOG_LOG_4(I,Prog,M,false) |
#define | __LOG_PROG_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Prog,M,false) |
#define | __LOG_WARN_2(I, M) __LOG_LOG_4(I,Warn,M,false) |
#define | __LOG_WARN_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Warn,M,false) |
#define | __LOG_ERROR_2(I, M) __LOG_LOG_4(I,Error,M,false) |
#define | __LOG_ERROR_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Error,M,false) |
#define | __LOG_FATAL_2(I, M) __LOG_LOG_4(I,Fatal,M,false) |
#define | __LOG_FATAL_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Fatal,M,false) |
#define | __LOG_ASSERT_3(I, C, M) if (!(C)) { __LOG_ERROR_2(I,M) } |
#define | __LOG_ASSERT_2(C, M) __LOG_ASSERT_3(__DEFAULT_LOGGER,C,M) |
#define | __LOG_LOG_ONCE_3(I, L, M) __LOG_LOG_4(I,L,M,true) |
#define | __LOG_LOG_ONCE_2(L, M) __LOG_LOG_4(__DEFAULT_LOGGER,L,M,true) |
#define | __LOG_LOG_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,true) |
#define | __LOG_TRACE_ONCE_2(I, M) __LOG_LOG_4(I,Trace,M,true) |
#define | __LOG_TRACE_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Trace,M,true) |
#define | __LOG_DEBUG_ONCE_2(I, M) __LOG_LOG_4(I,Debug,M,true) |
#define | __LOG_DEBUG_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,true) |
#define | __LOG_INFO_ONCE_2(I, M) __LOG_LOG_4(I,Info,M,true) |
#define | __LOG_INFO_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Info,M,true) |
#define | __LOG_PROG_ONCE_2(I, M) __LOG_LOG_4(I,Prog,M,true) |
#define | __LOG_PROG_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Prog,M,true) |
#define | __LOG_WARN_ONCE_2(I, M) __LOG_LOG_4(I,Warn,M,true) |
#define | __LOG_WARN_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Warn,M,true) |
#define | __LOG_ERROR_ONCE_2(I, M) __LOG_LOG_4(I,Error,M,true) |
#define | __LOG_ERROR_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Error,M,true) |
#define | __LOG_FATAL_ONCE_2(I, M) __LOG_LOG_4(I,Fatal,M,true) |
#define | __LOG_FATAL_ONCE_1(M) __LOG_LOG_4(__DEFAULT_LOGGER,Fatal,M,true) |
#define | LOGGER(I, K) static scarab::logger I(K); |
#define | LOG(...) macro_dispatcher(__LOG_LOG_, __VA_ARGS__)(__VA_ARGS__) |
#define | LTRACE(...) macro_dispatcher(__LOG_TRACE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LDEBUG(...) macro_dispatcher(__LOG_DEBUG_, __VA_ARGS__)(__VA_ARGS__) |
#define | LINFO(...) macro_dispatcher(__LOG_INFO_, __VA_ARGS__)(__VA_ARGS__) |
#define | LPROG(...) macro_dispatcher(__LOG_PROG_, __VA_ARGS__)(__VA_ARGS__) |
#define | LWARN(...) macro_dispatcher(__LOG_WARN_, __VA_ARGS__)(__VA_ARGS__) |
#define | LERROR(...) macro_dispatcher(__LOG_ERROR_, __VA_ARGS__)(__VA_ARGS__) |
#define | LFATAL(...) macro_dispatcher(__LOG_FATAL_, __VA_ARGS__)(__VA_ARGS__) |
#define | LASSERT(...) macro_dispatcher(__LOG_ASSERT_, __VA_ARGS__)(__VA_ARGS__) |
#define | LOG_ONCE(...) macro_dispatcher(__LOG_LOG_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LTRACE_ONCE(...) macro_dispatcher(__LOG_TRACE_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LDEBUG_ONCE(...) macro_dispatcher(__LOG_DEBUG_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LINFO_ONCE(...) macro_dispatcher(__LOG_INFO_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LPROG_ONCE(...) macro_dispatcher(__LOG_PROG_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LWARN_ONCE(...) macro_dispatcher(__LOG_WARN_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LERROR_ONCE(...) macro_dispatcher(__LOG_ERROR_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define | LFATAL_ONCE(...) macro_dispatcher(__LOG_FATAL_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
Contains the logger class and macros, based on Kasper's KLogger class.
Definition in file logger.hh.
#define __DEFAULT_LOGGER scarab::logger::GetRootLogger() |
#define __LOG_ASSERT_2 | ( | C, | |
M | |||
) | __LOG_ASSERT_3(__DEFAULT_LOGGER,C,M) |
#define __LOG_ASSERT_3 | ( | I, | |
C, | |||
M | |||
) | if (!(C)) { __LOG_ERROR_2(I,M) } |
#define __LOG_DEBUG_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,false) |
#define __LOG_DEBUG_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Debug,M,false) |
#define __LOG_DEBUG_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,true) |
#define __LOG_DEBUG_ONCE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Debug,M,true) |
#define __LOG_ERROR_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Error,M,false) |
#define __LOG_ERROR_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Error,M,false) |
#define __LOG_ERROR_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Error,M,true) |
#define __LOG_ERROR_ONCE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Error,M,true) |
#define __LOG_FATAL_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Fatal,M,false) |
#define __LOG_FATAL_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Fatal,M,false) |
#define __LOG_FATAL_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Fatal,M,true) |
#define __LOG_FATAL_ONCE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Fatal,M,true) |
#define __LOG_INFO_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Info,M,false) |
#define __LOG_INFO_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Info,M,false) |
#define __LOG_INFO_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Info,M,true) |
#define __LOG_INFO_ONCE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Info,M,true) |
#define __LOG_LOCATION scarab::logger::Location(__FILE__, __FUNC__, __LINE__) |
#define __LOG_LOG_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,false) |
#define __LOG_LOG_2 | ( | L, | |
M | |||
) | __LOG_LOG_4(__DEFAULT_LOGGER,L,M,false) |
#define __LOG_LOG_3 | ( | I, | |
L, | |||
M | |||
) | __LOG_LOG_4(I,L,M,false) |
#define __LOG_LOG_4 | ( | I, | |
L, | |||
M, | |||
O | |||
) |
#define __LOG_LOG_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Debug,M,true) |
#define __LOG_LOG_ONCE_2 | ( | L, | |
M | |||
) | __LOG_LOG_4(__DEFAULT_LOGGER,L,M,true) |
#define __LOG_LOG_ONCE_3 | ( | I, | |
L, | |||
M | |||
) | __LOG_LOG_4(I,L,M,true) |
#define __LOG_PROG_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Prog,M,false) |
#define __LOG_PROG_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Prog,M,false) |
#define __LOG_PROG_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Prog,M,true) |
#define __LOG_PROG_ONCE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Prog,M,true) |
#define __LOG_TRACE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Trace,M,false) |
#define __LOG_TRACE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Trace,M,false) |
#define __LOG_TRACE_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Trace,M,true) |
#define __LOG_TRACE_ONCE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Trace,M,true) |
#define __LOG_WARN_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Warn,M,false) |
#define __LOG_WARN_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Warn,M,false) |
#define __LOG_WARN_ONCE_1 | ( | M | ) | __LOG_LOG_4(__DEFAULT_LOGGER,Warn,M,true) |
#define __LOG_WARN_ONCE_2 | ( | I, | |
M | |||
) | __LOG_LOG_4(I,Warn,M,true) |
#define LASSERT | ( | ... | ) | macro_dispatcher(__LOG_ASSERT_, __VA_ARGS__)(__VA_ARGS__) |
#define LDEBUG | ( | ... | ) | macro_dispatcher(__LOG_DEBUG_, __VA_ARGS__)(__VA_ARGS__) |
#define LDEBUG_ONCE | ( | ... | ) | macro_dispatcher(__LOG_DEBUG_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define LERROR | ( | ... | ) | macro_dispatcher(__LOG_ERROR_, __VA_ARGS__)(__VA_ARGS__) |
#define LERROR_ONCE | ( | ... | ) | macro_dispatcher(__LOG_ERROR_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define LFATAL | ( | ... | ) | macro_dispatcher(__LOG_FATAL_, __VA_ARGS__)(__VA_ARGS__) |
#define LFATAL_ONCE | ( | ... | ) | macro_dispatcher(__LOG_FATAL_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define LINFO | ( | ... | ) | macro_dispatcher(__LOG_INFO_, __VA_ARGS__)(__VA_ARGS__) |
#define LINFO_ONCE | ( | ... | ) | macro_dispatcher(__LOG_INFO_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define LOG | ( | ... | ) | macro_dispatcher(__LOG_LOG_, __VA_ARGS__)(__VA_ARGS__) |
#define LOG_ONCE | ( | ... | ) | macro_dispatcher(__LOG_LOG_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define LOGGER | ( | I, | |
K | |||
) | static scarab::logger I(K); |
#define LPROG | ( | ... | ) | macro_dispatcher(__LOG_PROG_, __VA_ARGS__)(__VA_ARGS__) |
#define LPROG_ONCE | ( | ... | ) | macro_dispatcher(__LOG_PROG_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define LTRACE | ( | ... | ) | macro_dispatcher(__LOG_TRACE_, __VA_ARGS__)(__VA_ARGS__) |
#define LTRACE_ONCE | ( | ... | ) | macro_dispatcher(__LOG_TRACE_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define LWARN | ( | ... | ) | macro_dispatcher(__LOG_WARN_, __VA_ARGS__)(__VA_ARGS__) |
#define LWARN_ONCE | ( | ... | ) | macro_dispatcher(__LOG_WARN_ONCE_, __VA_ARGS__)(__VA_ARGS__) |
#define macro_dispatcher | ( | func, | |
... | |||
) | macro_dispatcher_(func, va_num_args(__VA_ARGS__)) |
#define macro_dispatcher_ | ( | func, | |
nargs | |||
) | macro_dispatcher__(func, nargs) |
#define va_num_args | ( | ... | ) | expand( va_num_args_impl(__VA_ARGS__, 5,4,3,2,1)) |