| // Copyright 2012 The Go Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style | |
| // license that can be found in the LICENSE file. | |
| // +build windows | |
| package debug | |
| import ( | |
| "os" | |
| "strconv" | |
| ) | |
| // Log interface allows different log implementations to be used. | |
| type Log interface { | |
| Close() error | |
| Info(eid uint32, msg string) error | |
| Warning(eid uint32, msg string) error | |
| Error(eid uint32, msg string) error | |
| } | |
| // ConsoleLog provides access to the console. | |
| type ConsoleLog struct { | |
| Name string | |
| } | |
| // New creates new ConsoleLog. | |
| func New(source string) *ConsoleLog { | |
| return &ConsoleLog{Name: source} | |
| } | |
| // Close closes console log l. | |
| func (l *ConsoleLog) Close() error { | |
| return nil | |
| } | |
| func (l *ConsoleLog) report(kind string, eid uint32, msg string) error { | |
| s := l.Name + "." + kind + "(" + strconv.Itoa(int(eid)) + "): " + msg + "\n" | |
| _, err := os.Stdout.Write([]byte(s)) | |
| return err | |
| } | |
| // Info writes an information event msg with event id eid to the console l. | |
| func (l *ConsoleLog) Info(eid uint32, msg string) error { | |
| return l.report("info", eid, msg) | |
| } | |
| // Warning writes an warning event msg with event id eid to the console l. | |
| func (l *ConsoleLog) Warning(eid uint32, msg string) error { | |
| return l.report("warn", eid, msg) | |
| } | |
| // Error writes an error event msg with event id eid to the console l. | |
| func (l *ConsoleLog) Error(eid uint32, msg string) error { | |
| return l.report("error", eid, msg) | |
| } |