jsonutils

package
v1.13.0-beta.1 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DocumentToUntyped added in v1.12.0

func DocumentToUntyped(doc interface{}) (interface{}, error)

DocumentToUntyped converts a typed object to JSON data i.e. string, []interface{}, map[string]interface{}

Types

type Action

type Action func(data *ActionData) (interface{}, error)

Action encapsulates the logic that must be performed for each JSON element

func OnlyForLeafsAndKeys

func OnlyForLeafsAndKeys(action Action) Action

OnlyForLeafsAndKeys is an action modifier - apply action only for leafs and map keys

type ActionData

type ActionData struct {
	Document interface{}
	Element  interface{}
	Path     string
}

ActionData represents data available for action on current element

type Key

type Key struct {
	Key string
}

Key type is needed for traversal to specify the key

type Traversal

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

Traversal is a type that encapsulates JSON traversal algorithm It traverses entire JSON structure applying some logic to its elements

func NewTraversal

func NewTraversal(document interface{}, action Action) *Traversal

NewTraversal creates JSON Traversal object

func (*Traversal) TraverseJSON

func (t *Traversal) TraverseJSON() (interface{}, error)

TraverseJSON performs a traverse of JSON document and applying action for each JSON element

Jump to

Keyboard shortcuts

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