Documentation ¶
Index ¶
Constants ¶
const ( ErrorUnderrun = Error("frame underrun, unexpected EOF") ErrorBadSize = Error("bad frame size") ErrorOversizedFrame = Error("oversized frame, max size exceeded") )
Variables ¶
This section is empty.
Functions ¶
func EOFReaderFunc ¶
EOFReaderFunc always returns nil, io.EOF; it implements the ReaderFunc API.
Types ¶
type Decoder ¶
type Decoder interface { // Decode reads the next encoded message from its input and stores it // in the value pointed to by m. If m isn't a proto.Message, Decode will panic. Decode(interface{}) error }
Decoder reads and decodes Protobuf messages from an io.Reader.
type DecoderFunc ¶
type DecoderFunc func(interface{}) error
DecoderFunc is the functional adaptation of Decoder
func NewDecoder ¶
func NewDecoder(r Reader, uf UnmarshalFunc) DecoderFunc
NewDecoder returns a new Decoder that reads from the given frame Reader.
func (DecoderFunc) Decode ¶
func (f DecoderFunc) Decode(m interface{}) error
type Reader ¶
Reader generates data frames from some source, returning io.EOF when the end of the input stream is detected.
type ReaderFunc ¶
ReaderFunc is the functional adaptation of Reader.
func ReadAll ¶
func ReadAll(r io.Reader) ReaderFunc
ReadAll returns a reader func that returns the complete contents of `r` in a single frame. A zero length frame is treated as an "end of stream" condition, returning io.EOF.
func (ReaderFunc) ReadFrame ¶
func (f ReaderFunc) ReadFrame() ([]byte, error)
type UnmarshalFunc ¶
UnmarshalFunc translates bytes to objects
type Writer ¶
Writer sends whole frames to some endpoint; returns io.ErrShortWrite if the frame is only partially written.
type WriterFunc ¶
WriterFunc is the functional adaptation of Writer.
func WriterFor ¶
func WriterFor(w io.Writer) WriterFunc
WriterFor adapts an io.Writer to the Writer interface. All buffers are written to `w` without decoration or modification.
func (WriterFunc) WriteFrame ¶
func (f WriterFunc) WriteFrame(b []byte) error