jsonx

package
v1.0.3 Latest Latest
Warning

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

Go to latest
Published: Aug 2, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AllValidJSONKeys

func AllValidJSONKeys(s interface{}) (keys []string)

AllValidJSONKeys returns all JSON keys from the struct or *struct type. It does not return keys from nested slices, but embedded/nested structs.

func ApplyJSONPatch

func ApplyJSONPatch(p json.RawMessage, object interface{}, denyPaths ...string) error

func EmbedSources

func EmbedSources(in json.RawMessage, opts ...OptionsModifier) (out json.RawMessage, err error)

func Flatten

func Flatten(raw json.RawMessage) map[string]interface{}

Flatten flattens a JSON object using dot notation.

func GetRequireValidKey

func GetRequireValidKey(t require.TestingT, original interface{}, raw []byte, key string) gjson.Result

func NewStrictDecoder

func NewStrictDecoder(b io.Reader) *json.Decoder

NewStrictDecoder is a shorthand for json.Decoder.DisallowUnknownFields

func TestMarshalJSONString

func TestMarshalJSONString(t *testing.T, i interface{}) string

func TestUnmarshalJSON

func TestUnmarshalJSON(t *testing.T, in []byte, i interface{})

Types

type OptionsModifier

type OptionsModifier func(*options)

func WithIgnoreKeys

func WithIgnoreKeys(keys ...string) OptionsModifier

func WithOnlySchemes

func WithOnlySchemes(scheme ...string) OptionsModifier

type Result

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

func ParseEnsureKeys

func ParseEnsureKeys(original interface{}, raw []byte) *Result

ParseEnsureKeys returns a result that has the GetRequireValidKey function.

func (*Result) GetRequireValidKey

func (r *Result) GetRequireValidKey(t require.TestingT, key string) gjson.Result

GetRequireValidKey ensures that the key is valid before returning the result.

Jump to

Keyboard shortcuts

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