File: print.go

package info (click to toggle)
golang-github-go-log-log 0.2.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 120 kB
  • sloc: makefile: 2
file content (28 lines) | stat: -rw-r--r-- 612 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Package print allows users to create a Logger interface from any
// object that supports Print and Printf.
package print

// Printer is an interface for Print and Printf.
type Printer interface {
	Print(v ...interface{})
	Printf(format string, v ...interface{})
}

type logger struct {
	printer Printer
}

func (logger *logger) Log(v ...interface{}) {
	logger.printer.Print(v...)
}

func (logger *logger) Logf(format string, v ...interface{}) {
	logger.printer.Printf(format, v...)
}

// New creates a new logger wrapping printer.
func New(printer Printer) *logger {
	return &logger{
		printer: printer,
	}
}