/* * Created by yuuta on 1/1/22. */ #include "common.h" #include "log.h" #include #include #include void g_log(enum log_level level, const char *file, int line, const char *format, ...) { int stream = level <= log_warn || level == log_debug ? p_env.err : p_env.out; switch (level) { case log_fetal: dprintf(stream, "F"); break; case log_error: dprintf(stream, "E"); break; case log_warn: dprintf(stream, "W"); break; case log_info: dprintf(stream, "I"); break; case log_debug: dprintf(stream, "D"); break; default: dprintf(p_env.err, "Unknown log level: %d.\n", level); assert(0); } dprintf(stream, "[%s:%d]: ", file, line); va_list list; va_start(list, format); vdprintf(stream, format, list); va_end(list); dprintf(stream, "\n"); }