diff options
Diffstat (limited to 'flags.go')
| -rw-r--r-- | flags.go | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/flags.go b/flags.go new file mode 100644 index 0000000..08e9c8d --- /dev/null +++ b/flags.go @@ -0,0 +1,69 @@ +package log + +import ( + "errors" +) + +var INFO bool = true +var WARN bool = true +var ERROR bool = true + +var VERBOSE bool = false +var SPEW bool = false + +func All(b bool) { + Set("SPEW", b) + Set("INFO", b) + Set("WARN", b) + Set("ERROR", b) + Set("VERBOSE", b) +} + +func ListAll() []string { + var all []string + + all = []string{"SPEW","INFO", "WARN", "ERROR", "VERBOSE"} + + return all +} + +func Set(flag string, b bool) { + switch flag { + case "INFO": + INFO = b + case "WARN": + WARN = b + case "SPEW": + SPEW = b + case "ERROR": + ERROR = b + case "VERBOSE": + VERBOSE = b + default: + Error(errors.New("unknown flag"), "Flag name sent:", flag) + } +} + +func Get(flag string) bool { + switch flag { + case "INFO": + return INFO + case "WARN": + return WARN + case "SPEW": + return SPEW + case "ERROR": + return ERROR + case "VERBOSE": + return VERBOSE + default: + Error(errors.New("unknown flag"), "Flag name sent:", flag) + } + return false +} + +// register a variable name from a subsystem +// this is used for custom log flags +func Register(subsystem string, name string) { + Info("log.Register() got subsystem", subsystem, "with name =", name) +} |
