config

package
v0.8.0-beta.10 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2023 License: AGPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Clone

func Clone(s any) (any, error)

func Decode

func Decode(input interface{}, output interface{}) error

Decode decodes generic map values from `input` to `output`, while providing helpful error information. `output` must be a pointer to a Go struct that contains `mapstructure` struct tags on fields that should be decoded. This function is useful when decoding values from configuration files parsed as `map[string]interface{}` or component metadata as `map[string]string`.

Most of the heavy lifting is handled by the mapstructure library. A custom decoder is used to handle decoding string values to the supported primitives.

func DeepCopy

func DeepCopy(s, d any) error

DeepCopy make a compele copy for a struct value

Types

type StringDecoder

type StringDecoder interface {
	DecodeString(value string) error
}

StringDecoder is used as a way for custom types (or alias types) to override the basic decoding function in the `decodeString` DecodeHook. `encoding.TextMashaller` was not used because it matches many Go types and would have potentially unexpected results. Specifying a custom decoding func should be very intentional.

Jump to

Keyboard shortcuts

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