| 1 | #define khlib_debug(...) if (_khlib_log_level >= Debug) {fprintf(stderr, "[debug] " __VA_ARGS__); fflush(stderr);} |
| 2 | #define khlib_info(...) if (_khlib_log_level >= Info ) {fprintf(stderr, "[info] " __VA_ARGS__); fflush(stderr);} |
| 3 | #define khlib_warn(...) if (_khlib_log_level >= Warn ) {fprintf(stderr, "[warn] " __VA_ARGS__); fflush(stderr);} |
| 4 | #define khlib_error(...) if (_khlib_log_level >= Error) {fprintf(stderr, "[error] " __VA_ARGS__); fflush(stderr);} |
| 5 | #define khlib_fatal(...) {fprintf(stderr, "[fatal] " __VA_ARGS__); exit(EXIT_FAILURE);} |
| 6 | |
| 7 | typedef enum khlib_LogLevel { |
| 8 | Nothing, |
| 9 | Error, |
| 10 | Warn, |
| 11 | Info, |
| 12 | Debug |
| 13 | } LogLevel; |
| 14 | |
| 15 | LogLevel _khlib_log_level; |