io

package
v0.0.0-...-7d67436 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 21, 2020 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ProtoStdout   = "-"
	ProtoTruncate = "file://"
	ProtoPrepend  = "prepend://"
)

Variables

View Source
var Newline = []byte{'\n'}

Functions

func WriteLine

func WriteLine(writer sysio.Writer, line []byte) (len int, err error)

WriteLine forwards the input date to the write and will write and additional newline. The number of writte bites is the sum of those operations (unless it exits early due to an error). The error (if any), is passed on from the underlying call to io.Writer.Write

Types

type EntityDeserializer

type EntityDeserializer interface {
	Deserialize(data []byte) (interface{}, error)
}

type EntityIOReader

type EntityIOReader struct {
	// contains filtered or unexported fields
}

func NewEntityIOReader

func NewEntityIOReader(readers IOFactory, deserializer EntityDeserializer) *EntityIOReader

func (*EntityIOReader) Read

func (w *EntityIOReader) Read(path string) (entity interface{}, err error)

type EntityIOWriter

type EntityIOWriter struct {
	// contains filtered or unexported fields
}

func NewEntityIOWriter

func NewEntityIOWriter(writers IOFactory, serializer EntitySerializer) *EntityIOWriter

func (*EntityIOWriter) Write

func (w *EntityIOWriter) Write(entity interface{}, path string) (err error)

type EntityReader

type EntityReader interface {
	Read(string) (interface{}, error)
}

type EntitySerializer

type EntitySerializer interface {
	Serialize(entity interface{}) ([]byte, error)
}

type EntityWriter

type EntityWriter interface {
	Write(interface{}, string) error
}

type FilePrepender

type FilePrepender struct {
	File string
	Perm os.FileMode
	// contains filtered or unexported fields
}

func OpenFilePrepender

func OpenFilePrepender(file string, perm os.FileMode) (prepender *FilePrepender, err error)

func (*FilePrepender) Close

func (p *FilePrepender) Close() (err error)

func (*FilePrepender) Write

func (p *FilePrepender) Write(data []byte) (int, error)

type IOFactory

type IOFactory interface {
	Reader(string) (sysio.ReadCloser, error)
	Writer(string) (sysio.WriteCloser, error)
}

type OsIOFactory

type OsIOFactory struct {
	FileMode os.FileMode
}

func NewOsIOFactory

func NewOsIOFactory(fileMode os.FileMode) *OsIOFactory

func (*OsIOFactory) Reader

func (f *OsIOFactory) Reader(source string) (sysio.ReadCloser, error)

func (*OsIOFactory) Writer

func (f *OsIOFactory) Writer(target string) (sysio.WriteCloser, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL