File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ package yalogger
2+
3+ import (
4+ "errors"
5+ )
6+
7+ var ErrInvalidLogLevel = errors .New ("invalid log level" )
Original file line number Diff line number Diff line change 1+ package yalogger
2+
3+ import "strings"
4+
5+ func (l * Level ) String () string {
6+ switch * l {
7+ case PanicLevel :
8+ return "Panic"
9+ case FatalLevel :
10+ return "Fatal"
11+ case ErrorLevel :
12+ return "Error"
13+ case WarnLevel :
14+ return "Warn"
15+ case InfoLevel :
16+ return "Info"
17+ case DebugLevel :
18+ return "Debug"
19+ case TraceLevel :
20+ return "Trace"
21+ default :
22+ return "Unknown"
23+ }
24+ }
25+
26+ func (l * Level ) Unmarshal (text string ) error {
27+ switch strings .ToLower (text ) {
28+ case "panic" :
29+ * l = PanicLevel
30+ case "fatal" :
31+ * l = FatalLevel
32+ case "error" :
33+ * l = ErrorLevel
34+ case "warn" :
35+ * l = WarnLevel
36+ case "info" :
37+ * l = InfoLevel
38+ case "debug" :
39+ * l = DebugLevel
40+ case "trace" :
41+ * l = TraceLevel
42+ default :
43+ return ErrInvalidLogLevel
44+ }
45+
46+ return nil
47+ }
48+
49+ func (l * Level ) UnmarshalText (text []byte ) error {
50+ return l .Unmarshal (string (text ))
51+ }
You can’t perform that action at this time.
0 commit comments