Fixed class lifetimes

This commit is contained in:
2026-05-10 04:01:54 +02:00
parent e6c030e8c8
commit 5916daaada
8 changed files with 47 additions and 29 deletions
+41
View File
@@ -0,0 +1,41 @@
public enum LogLevel {
Info,
Warning,
Error,
}
public class Logger {
String prefix;
public constructor(str* prefix) {
self.prefix = prefix.to_string();
}
public void info(self*, str* message) {
self.log(LogLevel::Info, message);
}
public void warning(self*, str* message) {
self.log(LogLevel::Warning, message);
}
public void error(self*, str* message) {
self.log(LogLevel::Error, message);
}
void log(self*, LogLevel level, str* message) {
match(level) {
LogLevel::Info => {
println!("[INFO] {} {}", self.prefix, message);
}
LogLevel::Warning => {
println!("[WARN] {} {}", self.prefix, message);
}
LogLevel::Error => {
println!("[ERROR] {} {}", self.prefix, message);
}
}
}
}