| package main |
| |
| import ( |
| "fmt" |
| logpkg "log" |
| "os" |
| ) |
| |
| type Log struct { |
| verbose bool |
| } |
| |
| func (l *Log) Printf(format string, v ...interface{}) { |
| if l.verbose { |
| logpkg.Printf(format, v...) |
| } else { |
| fmt.Fprintf(os.Stderr, format, v...) |
| } |
| } |
| |
| func (l *Log) Println(args ...interface{}) { |
| if l.verbose { |
| logpkg.Println(args...) |
| } else { |
| fmt.Fprintln(os.Stderr, args...) |
| } |
| } |
| |
| func (l *Log) Verbose() bool { |
| return l.verbose |
| } |
| |
| func (l *Log) fatalf(format string, v ...interface{}) { |
| l.Printf(format, v...) |
| os.Exit(1) |
| } |
| |
| func (l *Log) fatal(args ...interface{}) { |
| l.Println(args...) |
| os.Exit(1) |
| } |
| |
| func (l *Log) fatalErr(err error) { |
| l.fatal("error:", err) |
| } |