encoding

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Feb 4, 2024 License: BSD-3-Clause Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNoEncoderAvailable = errors.New("codec not available")

Functions

This section is empty.

Types

type Codec

type Codec struct {
	NewEncoder NewEncoderFunc
	NewDecoder NewDecoderFunc
	MimeTypes  []string
}

func WrapCodec

func WrapCodec[E Encoder, EFunc func(w io.Writer) E, D Decoder, DFunc func(r io.Reader) D](encoderFunc EFunc, decoderFunc DFunc, mimeTypes ...string) Codec

type Codecs added in v0.1.4

type Codecs struct {
	Codecs           map[string]Codec
	OrderedMimeTypes []string
}

func (*Codecs) Register added in v0.1.4

func (c *Codecs) Register(codec Codec)

type Decoder

type Decoder interface {
	Decode(v interface{}) error
}

func ContentTypeDecoder

func ContentTypeDecoder(r io.Reader, contentTypeHeader string, codecs Codecs) Decoder

type EditMode

type EditMode bool
const (
	EditOff EditMode = false
	EditOn  EditMode = true
)

type Encoder

type Encoder interface {
	Encode(v interface{}) error
}

func AcceptEncoder

func AcceptEncoder(w http.ResponseWriter, acceptHeader string, edit EditMode, codecs Codecs) Encoder

type NewDecoderFunc

type NewDecoderFunc func(r io.Reader) Decoder

func WrapDecoder

func WrapDecoder[D Decoder, F func(r io.Reader) D](f F) NewDecoderFunc

type NewEncoderFunc

type NewEncoderFunc func(w io.Writer) Encoder

func WrapEncoder

func WrapEncoder[E Encoder, F func(w io.Writer) E](f F) NewEncoderFunc

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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