33 lines
902 B
C++
33 lines
902 B
C++
#pragma once
|
|
|
|
#include <Orange/Core/Types.h>
|
|
|
|
#include <stb/stb_sprintf.h>
|
|
|
|
#define Assert(...)
|
|
|
|
namespace orange::log
|
|
{
|
|
namespace LogLevels
|
|
{
|
|
enum LogLevel
|
|
{
|
|
Fatal,
|
|
Error,
|
|
Warning,
|
|
Info,
|
|
Debug,
|
|
|
|
Count
|
|
};
|
|
}
|
|
using LogLevel = LogLevels::LogLevel;
|
|
|
|
void log(LogLevel level, const char* fmt, ...);
|
|
|
|
template <typename... Args> void debug(Args&&... args) { log(LogLevels::Debug, args...); }
|
|
template <typename... Args> void info (Args&&... args) { log(LogLevels::Info, args...); }
|
|
template <typename... Args> void warn (Args&&... args) { log(LogLevels::Warning, args...); }
|
|
template <typename... Args> void err (Args&&... args) { log(LogLevels::Error, args...); }
|
|
template <typename... Args> void fatal(Args&&... args) { log(LogLevels::Fatal, args...); }
|
|
} |