Log: Also log filename and line number of caller

This commit is contained in:
Simon Lübeß
2024-01-20 21:23:34 +01:00
parent 55eef017e7
commit 02be6d8eb7
7 changed files with 160 additions and 87 deletions
-28
View File
@@ -5,34 +5,6 @@ using internal GlitchLog;
namespace GlitchLog
{
public abstract class Logger
{
protected LogLevel _logLevel;
public LogLevel Level
{
get => _logLevel;
set => _logLevel = value;
}
public abstract String Name {get; set;}
public abstract void Trace(StringView format, params Object[] args);
public abstract void Info(StringView format, params Object[] args);
public abstract void Warning(StringView format, params Object[] args);
public abstract void Error(StringView format, params Object[] args);
public abstract void Critical(StringView format, params Object[] args);
public abstract void Assert(bool condition, String error = Compiler.CallerExpression[0], String filePath = Compiler.CallerFilePath, int line = Compiler.CallerLineNum);
#if !DEBUG
[SkipCall]
#endif
public abstract void AssertDebug(bool condition, String error = Compiler.CallerExpression[0], String filePath = Compiler.CallerFilePath, int line = Compiler.CallerLineNum);
public abstract void Log(LogLevel level, StringView format, params Object[] args);
}
public class DebugLogger : Logger
{
// {l} = log level (first parameter)
+31
View File
@@ -0,0 +1,31 @@
using System;
namespace GlitchLog;
public abstract class Logger
{
protected LogLevel _logLevel;
public LogLevel Level
{
get => _logLevel;
set => _logLevel = value;
}
public abstract String Name {get; set;}
public abstract void Trace(StringView format, params Object[] args);
public abstract void Info(StringView format, params Object[] args);
public abstract void Warning(StringView format, params Object[] args);
public abstract void Error(StringView format, params Object[] args);
public abstract void Critical(StringView format, params Object[] args);
public abstract void Assert(bool condition, String error = Compiler.CallerExpression[0], String filePath = Compiler.CallerFilePath, int line = Compiler.CallerLineNum);
#if !DEBUG
[SkipCall]
#endif
public abstract void AssertDebug(bool condition, String error = Compiler.CallerExpression[0], String filePath = Compiler.CallerFilePath, int line = Compiler.CallerLineNum);
public abstract void Log(LogLevel level, StringView format, params Object[] args);
}