2019-06-22 11:00:57 +02:00
|
|
|
const serial = @import("serial.zig");
|
|
|
|
const fmt = @import("std").fmt;
|
|
|
|
|
|
|
|
pub const Level = enum {
|
|
|
|
INFO,
|
|
|
|
DEBUG,
|
|
|
|
WARNING,
|
2019-09-08 21:48:23 +02:00
|
|
|
ERROR,
|
2019-06-22 11:00:57 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
fn logCallback(context: void, str: []const u8) anyerror!void {
|
|
|
|
serial.writeString(str, serial.Port.COM1);
|
|
|
|
}
|
|
|
|
|
|
|
|
pub fn log(comptime level: Level, comptime format: []const u8, args: ...) void {
|
|
|
|
fmt.format({}, anyerror, logCallback, "[" ++ @tagName(level) ++ "] " ++ format, args) catch unreachable;
|
|
|
|
}
|
|
|
|
|
|
|
|
pub fn logInfo(comptime format: []const u8, args: ...) void {
|
|
|
|
log(Level.INFO, format, args);
|
|
|
|
}
|
|
|
|
|
|
|
|
pub fn logDebug(comptime format: []const u8, args: ...) void {
|
|
|
|
log(Level.DEBUG, format, args);
|
|
|
|
}
|
2019-09-08 21:48:23 +02:00
|
|
|
|
2019-06-22 11:00:57 +02:00
|
|
|
pub fn logWarning(comptime format: []const u8, args: ...) void {
|
|
|
|
log(Level.WARNING, format, args);
|
|
|
|
}
|
2019-09-08 21:48:23 +02:00
|
|
|
|
2019-06-22 11:00:57 +02:00
|
|
|
pub fn logError(comptime format: []const u8, args: ...) void {
|
|
|
|
log(Level.ERROR, format, args);
|
|
|
|
}
|