json

package
v0.18.0 Latest Latest
Warning

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

Go to latest
Published: Jan 22, 2023 License: MIT Imports: 9 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// KnownTypeFields holds the list of json property names
	// that can contain type discriminators.
	KnownTypeFields = []string{"$type", "@type"}
)
View Source
var (
	// Polymorphic returns a miruken.Builder that enables polymorphic messaging.
	Polymorphic miruken.Builder = miruken.Options(api.Options{
		PolymorphicHandling: miruken.Set(api.PolymorphicHandlingRoot),
	})
)

Functions

func Feature

func Feature(
	config ...func(installer *Installer),
) miruken.Feature

func UseStandard

func UseStandard() func(installer *Installer)

Types

type Installer

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

Installer configure json support.

func (*Installer) Install

func (i *Installer) Install(setup *miruken.SetupBuilder) error

func (*Installer) UseStandard

func (i *Installer) UseStandard()

type StdMapper

type StdMapper struct{}

StdMapper formats to and from json using encoding/json.

func (*StdMapper) FromJson

func (m *StdMapper) FromJson(
	_ *struct {
		miruken.Maps
		miruken.Format `from:"application/json"`
	}, jsonString string,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, options StdOptions,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, apiOptions api.Options,
	maps *miruken.Maps,
	ctx miruken.HandleContext,
) (any, error)

func (*StdMapper) FromJsonStream

func (m *StdMapper) FromJsonStream(
	_ *struct {
		miruken.Maps
		miruken.Format `from:"application/json"`
	}, stream io.Reader,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, options StdOptions,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, apiOptions api.Options,
	maps *miruken.Maps,
	ctx miruken.HandleContext,
) (any, error)

func (*StdMapper) ToJson

func (m *StdMapper) ToJson(
	_ *struct {
		miruken.Maps
		miruken.Format `to:"application/json"`
	}, maps *miruken.Maps,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, options StdOptions,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, apiOptions api.Options,
	ctx miruken.HandleContext,
) (js string, err error)

func (*StdMapper) ToJsonStream

func (m *StdMapper) ToJsonStream(
	_ *struct {
		miruken.Maps
		miruken.Format `to:"application/json"`
	}, maps *miruken.Maps,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, options StdOptions,
	_ *struct {
		miruken.Optional
		miruken.FromOptions
	}, apiOptions api.Options,
	ctx miruken.HandleContext,
) (stream io.Writer, err error)

type StdOptions

type StdOptions struct {
	Prefix       string
	Indent       string
	EscapeHTML   miruken.Option[bool]
	Transformers []transform.Transformer
}

StdOptions provide options for controlling json encoding.

Jump to

Keyboard shortcuts

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