format

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Sep 15, 2023 License: GPL-3.0 Imports: 11 Imported by: 31

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrAesCreate             = errors.New("AES cipher creation error")
	ErrGcmCreate             = errors.New("GCM cipher mode creation error")
	ErrAesGcmEncrypt         = errors.New("AES GCM encrypt error")
	ErrAesGcmDecrypt         = errors.New("AES GCM decrypt error")
	ErrAesGcmDecryptTooShort = errors.New("AES GCM bytes to decrypt too short")
)
View Source
var (
	ErrFormatConversionMarshal   = errors.New("format conversion error")
	ErrFormatConversionUnmarshal = errors.New("format conversion error")
)
View Source
var (
	ErrGhastly = errors.New("ghastly")
	ErrHaunter = errors.New("haunter")
	ErrGengar  = errors.New("gengar")
	ErrBasic   = errors.New("error")
)
View Source
var (
	ErrMaskActualMarshal   = errors.New("masking error while converting type to bytes")
	ErrMaskMarshal         = errors.New("masking error while masking bytes")
	ErrMaskActualUnmarshal = errors.New("masking error while converting bytes to type")
	ErrMaskUnmarshal       = errors.New("masking error while unmasking bytes")
)
View Source
var (
	ErrWellspringMask  = errors.New("wellspring")
	ErrHearthflameMask = errors.New("hearthflame")
)

Functions

func Convert

func Convert[V1 any, V2 any](
	v V1,
	v1 Format[V1],
	v2 Format[V2],
) (V2, error)

assuming byte compatibility, i.e. bytes <-> proto, string <-> json

Types

type AesGcmFormat added in v0.0.29

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

func (AesGcmFormat) Default added in v0.1.4

func (helper AesGcmFormat) Default() []byte

func (AesGcmFormat) Marshal added in v0.1.4

func (helper AesGcmFormat) Marshal(value []byte) ([]byte, error)

Encrypt

func (AesGcmFormat) Unmarshal added in v0.1.4

func (helper AesGcmFormat) Unmarshal(value []byte) ([]byte, error)

Decrypt

type Base64Format

type Base64Format struct {
}

func (Base64Format) Default

func (helper Base64Format) Default() string

func (Base64Format) Marshal

func (helper Base64Format) Marshal(value string) ([]byte, error)

func (Base64Format) Unmarshal

func (helper Base64Format) Unmarshal(value []byte) (string, error)

type BytesFormat

type BytesFormat struct {
}

func (BytesFormat) Default

func (helper BytesFormat) Default() []byte

func (BytesFormat) Marshal

func (helper BytesFormat) Marshal(value []byte) ([]byte, error)

func (BytesFormat) Unmarshal

func (helper BytesFormat) Unmarshal(value []byte) ([]byte, error)

type Format

type Format[T any] interface {
	Default() T
	Marshal(T) ([]byte, error)
	Unmarshal([]byte) (T, error)
}

bytes format

func AesGcm added in v0.0.29

func AesGcm(key string) (Format[[]byte], error)

func Base64

func Base64() Format[string]

func Bytes

func Bytes() Format[[]byte]

func Gengar added in v0.0.12

func Gengar() Format[string]

func Json

func Json[T any]() Format[T]

func Masked added in v0.0.29

func Masked[T any](mask Format[[]byte], actual Format[T]) Format[T]

func Ogerpon added in v0.0.29

func Ogerpon() Format[[]byte]

func Protobuf

func Protobuf[T proto.Message]() Format[T]

func Protojson added in v0.0.12

func Protojson[T proto.Message]() Format[T]

func String

func String() Format[string]

func Yaml

func Yaml[T any]() Format[T]

type GengarFormat added in v0.0.12

type GengarFormat struct {
}

because gengar likes to play pranks. for unit testing broken format results

func (GengarFormat) Default added in v0.0.12

func (helper GengarFormat) Default() string

func (GengarFormat) Marshal added in v0.0.12

func (helper GengarFormat) Marshal(value string) ([]byte, error)

func (GengarFormat) Unmarshal added in v0.0.12

func (helper GengarFormat) Unmarshal(value []byte) (string, error)

type JsonFormat

type JsonFormat[T any] struct{}

func (JsonFormat[T]) Default

func (helper JsonFormat[T]) Default() T

func (JsonFormat[T]) Marshal

func (helper JsonFormat[T]) Marshal(value T) ([]byte, error)

func (JsonFormat[T]) Unmarshal

func (helper JsonFormat[T]) Unmarshal(value []byte) (T, error)

type MaskedFormat added in v0.0.29

type MaskedFormat[T any] struct {
	// contains filtered or unexported fields
}

func (MaskedFormat[T]) Default added in v0.0.29

func (helper MaskedFormat[T]) Default() T

func (MaskedFormat[T]) Marshal added in v0.0.29

func (helper MaskedFormat[T]) Marshal(value T) ([]byte, error)

func (MaskedFormat[T]) Unmarshal added in v0.0.29

func (helper MaskedFormat[T]) Unmarshal(value []byte) (T, error)

type OgerponFormat added in v0.0.29

type OgerponFormat struct {
}

ogerpon the teal mask. for unit testing broken format results

func (OgerponFormat) Default added in v0.1.4

func (helper OgerponFormat) Default() []byte

func (OgerponFormat) Marshal added in v0.1.4

func (helper OgerponFormat) Marshal(value []byte) ([]byte, error)

func (OgerponFormat) Unmarshal added in v0.1.4

func (helper OgerponFormat) Unmarshal(value []byte) ([]byte, error)

type ProtobufFormat

type ProtobufFormat[T proto.Message] struct{}

func (ProtobufFormat[T]) Default

func (helper ProtobufFormat[T]) Default() T

func (ProtobufFormat[T]) Marshal

func (helper ProtobufFormat[T]) Marshal(value T) ([]byte, error)

func (ProtobufFormat[T]) Unmarshal

func (helper ProtobufFormat[T]) Unmarshal(value []byte) (T, error)

type ProtojsonFormat added in v0.0.12

type ProtojsonFormat[T proto.Message] struct{}

func (ProtojsonFormat[T]) Default added in v0.0.12

func (helper ProtojsonFormat[T]) Default() T

func (ProtojsonFormat[T]) Marshal added in v0.0.12

func (helper ProtojsonFormat[T]) Marshal(value T) ([]byte, error)

func (ProtojsonFormat[T]) Unmarshal added in v0.0.12

func (helper ProtojsonFormat[T]) Unmarshal(value []byte) (T, error)

type StringFormat

type StringFormat struct {
}

func (StringFormat) Default

func (helper StringFormat) Default() string

func (StringFormat) Marshal

func (helper StringFormat) Marshal(value string) ([]byte, error)

func (StringFormat) Unmarshal

func (helper StringFormat) Unmarshal(value []byte) (string, error)

type YamlFormat

type YamlFormat[T any] struct{}

func (YamlFormat[T]) Default

func (helper YamlFormat[T]) Default() T

func (YamlFormat[T]) Marshal

func (helper YamlFormat[T]) Marshal(value T) ([]byte, error)

func (YamlFormat[T]) Unmarshal

func (helper YamlFormat[T]) Unmarshal(value []byte) (T, error)

Jump to

Keyboard shortcuts

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