12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- package pio
- import (
- "io"
- )
- // NewLine is a slice of bytes which controls the
- // how a new line should be presented.
- //
- // Defaults to \n.
- var NewLine = []byte("\n")
- // Default returns the default, package-level registry instance.
- var Default = NewRegistry()
- // RegisterPrinter registers an already-created printer to the
- // registry.
- //
- // If a printer with the same `Name` is already
- // registered then it will be overridden by
- // this new "printer".
- //
- // Returns the Registry, therefore it can be used as builder.
- func RegisterPrinter(p *Printer) *Registry {
- return Default.RegisterPrinter(p)
- }
- // Register creates and registers a new Printer
- // based on a name(string) and an "output"(io.Writer).
- //
- // If a printer with the same `Name` is already
- // registered then it will be overridden by
- // this new "printer".
- //
- // Look `OutputFrom` too.
- //
- // Returns the just created Printer.
- func Register(printerName string, output io.Writer) *Printer {
- return Default.Register(printerName, output)
- }
- // Get returns a Printer based on the "printerName".
- // If printer with this name can't be found then
- // this function will return nil, so a check for
- // nil is always a good practice.
- func Get(printerName string) *Printer {
- return Default.Get(printerName)
- }
- // Remove deletes a printer item from the printers collection
- // by its name.
- func Remove(printerName string) {
- Default.Remove(printerName)
- }
- // Print accepts a value of "v",
- // tries to marshal its contents and flushes the result
- // to all available printers.
- func Print(v interface{}) (int, error) {
- return Default.Print(v)
- }
- // Println accepts a value of "v",
- // tries to marshal its contents and flushes the result
- // to all available printers, it adds a new line at the ending,
- // the result doesn't contain this new line, therefore result's contnets kept as expected.
- func Println(v interface{}) (int, error) {
- return Default.Println(v)
- }
- // Scan scans everything from "r" and prints
- // its new contents to the printers,
- // forever or until the returning "cancel" is fired, once.
- func Scan(r io.Reader, addNewLine bool) (cancel func()) {
- return Default.Scan(r, addNewLine)
- }
|