dencode

package module
v0.0.0-...-a2037f1 Latest Latest
Warning

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

Go to latest
Published: Jan 13, 2018 License: MIT Imports: 6 Imported by: 0

README

dencode

unified (de|en)coding wrapper for trailing formats.

  • toml
  • yaml
  • json

usage

get dencode
go get -u github.com/0x75960/dencode
use in code
type TestItem struct {
	A string
	B string
}

data := TestItem{A: "kanasimi", B: "yeeei"}

// toml
dencode.NewEncoder(
	dencode.TomlFormat,
	f,
	).Encode(&data)

dencode.NewDecoder(
	dencode.TomlFormat,
	f,
	).Decode(&data)

// yaml

dencode.NewEncoder(
	dencode.YamlFormat,
	f,
	).Encode(&data)

dencode.NewDecoder(
	dencode.YamlFormat,
	f,
	).Decode(&data)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewTomlEncoder

func NewTomlEncoder(w io.Writer) (e *toml.Encoder)

NewTomlEncoder from io.Writer

Types

type DecodeProvider

type DecodeProvider interface {
	Decode(interface{}) (err error)
}

DecodeProvider interface

type Decoder

type Decoder struct {
	Provider DecodeProvider
}

Decoder object

func NewDecoder

func NewDecoder(f FormatType, r io.Reader) (dec Decoder)

NewDecoder from io.Reader with specified format

func (Decoder) Decode

func (d Decoder) Decode(out interface{}) (err error)

Decode into specified object

type EncodeProvider

type EncodeProvider interface {
	Encode(interface{}) (err error)
}

EncodeProvider interface

type Encoder

type Encoder struct {
	Provider EncodeProvider
}

Encoder object

func NewEncoder

func NewEncoder(f FormatType, w io.Writer) (enc Encoder)

NewEncoder from io.Writer with specified format

func (Encoder) Encode

func (e Encoder) Encode(in interface{}) (err error)

Encode specified item

type FormatType

type FormatType int32
const (
	TomlFormat FormatType = iota
	YamlFormat
	JsonFormat
)

type TomlDecoder

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

TomlDecoder object

func NewTomlDecoder

func NewTomlDecoder(r io.Reader) (d *TomlDecoder)

NewTomlDecoder from io.Reader

func (TomlDecoder) Decode

func (t TomlDecoder) Decode(out interface{}) (err error)

Decode a item

type YamlDecoder

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

YamlDecoder object

func NewYamlDecoder

func NewYamlDecoder(r io.Reader) (d *YamlDecoder)

NewYamlDecoder from io.Reader

func (*YamlDecoder) Decode

func (y *YamlDecoder) Decode(c interface{}) (err error)

type YamlEncoder

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

func NewYamlEncoder

func NewYamlEncoder(w io.Writer) (e *YamlEncoder)

NewYamlEncoder from io.Writer

func (*YamlEncoder) Encode

func (y *YamlEncoder) Encode(c interface{}) (err error)

Encode as yaml

Jump to

Keyboard shortcuts

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