From b780c1a929f3788fd783346b5206bec7f0bb1d69 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Mon, 1 Jan 2024 01:49:53 -0600 Subject: more work on registration of flags Signed-off-by: Jeff Carr --- log.go | 39 ++++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) (limited to 'log.go') diff --git a/log.go b/log.go index 026a3f1..9f07af3 100644 --- a/log.go +++ b/log.go @@ -20,12 +20,41 @@ In your package, register NETWARN: log.Register("myNetPkg", "NETWARN", &NETWARN) */ -func Log(b bool, a ...any) { - if ! b { return } - origlog.Println(a...) +func Log(x any, a ...any) { + if x == nil { return } + switch x.(type) { + case bool: + if ! x.(bool) { + return + } + origlog.Println(a...) + case LogFlag: + var f LogFlag + f = x.(LogFlag) + if ! f.B { + return + } + a = append([]any{f.Subsystem}, a...) + origlog.Println(a...) + default: + a = append([]any{x}, a...) + origlog.Println(a...) + } } -func Logf(b bool, s string, a ...any) { - if ! b { return } +func Logf(x any, s string, a ...any) { + if x == nil { return } + switch x.(type) { + case bool: + if ! x.(bool) { + return + } + case LogFlag: + var f LogFlag + f = x.(LogFlag) + if ! f.B { + return + } + } origlog.Printf(s, a...) } -- cgit v1.2.3