Versions in this module Expand all Collapse all v0 v0.0.1 Dec 10, 2022 Changes in this version + const SchemeEmpty + const SchemeEnviron + const SchemeFile + var FromSchemes = []string + var ToSchemes = []string + func Postprocess(c Config, options ...PostprocessOption) error + func TreePathString(t Tree) string + type Config interface + type Container struct + func Load(v Config, options ...SourceOption) (*Container, error) + func New(c Config) *Container + func (r *Container) Clone() (Config, error) + func (r *Container) Copy(v Config) error + func (r *Container) DeepClone() (Config, error) + func (r *Container) DeepCopy(v Config) error + func (r *Container) Default() error + func (r *Container) Empty() + func (r *Container) EmptyClone() Config + func (r *Container) Expand() error + func (r *Container) Path(path string) (Config, error) + func (r *Container) Replace(c Config) + func (r *Container) Unwrap() Config + func (r *Container) Validate() error + type Defaultable interface + Default func() + type DestinationOption func(c Config) error + func ToFile(path string, f Marshaler) DestinationOption + func ToURL(u string, e Marshaler) (DestinationOption, error) + func ToWriter(w io.Writer, f Marshaler) DestinationOption + type ErrFileNotFound struct + Err error + Path string + func (e *ErrFileNotFound) Error() string + type ErrMarshal struct + At string + Err error + func (e *ErrMarshal) Error() string + type ErrPathNotFound struct + Path string + func (e *ErrPathNotFound) Error() string + type ErrPostprocess struct + Err error + Path string + func (e *ErrPostprocess) Error() string + type ErrUnexpectedKind struct + Expected []reflect.Kind + Got reflect.Kind + Type reflect.Type + func (e *ErrUnexpectedKind) Error() string + type ErrUnexpectedScheme struct + Expected []string + Got string + func (e *ErrUnexpectedScheme) Error() string + type ErrUnmarshal struct + At string + Err error + func (e *ErrUnmarshal) Error() string + type Expandable interface + Expand func() error + type Marshaler = func(v interface{}) ([]byte, error) + var JsonMarshaler Marshaler = json.Marshal + var TomlMarshaler Marshaler = toml.Marshal + var YamlMarshaler Marshaler = yaml.Marshal + type PostprocessOption func(c Tree) error + func WithDefaults() PostprocessOption + func WithExpansion() PostprocessOption + func WithNoNilPointers() PostprocessOption + func WithValidation() PostprocessOption + type SourceOption func(c Config) error + func FromEnviron(prefix string) SourceOption + func FromFile(path string, f Unmarshaler) SourceOption + func FromReader(r io.Reader, f Unmarshaler) SourceOption + func FromURL(u string, d Unmarshaler) (SourceOption, error) + type Tree interface + Interface func() interface{} + Name func() string + Next func() []Tree + Previous func() Tree + Value func() reflect.Value + WithNext func(Tree) Tree + WithPrevious func(Tree) Tree + WithValue func(reflect.Value) Tree + func NewTree(value reflect.Value, handler func(Tree) error) (Tree, error) + func TreePathSlice(t Tree) []Tree + type TreeArrayFieldNode struct + Field int + func (n *TreeArrayFieldNode) Name() string + type TreeMapFieldNode struct + Field reflect.Value + func (n *TreeMapFieldNode) Name() string + type TreeNode struct + Childs []Tree + Parent Tree + Val reflect.Value + func (n *TreeNode) Interface() interface{} + func (n *TreeNode) Name() string + func (n *TreeNode) Next() []Tree + func (n *TreeNode) Previous() Tree + func (n *TreeNode) Value() reflect.Value + func (n *TreeNode) WithNext(t Tree) Tree + func (n *TreeNode) WithPrevious(t Tree) Tree + func (n *TreeNode) WithValue(v reflect.Value) Tree + type TreeSliceFieldNode struct + Field int + func (n *TreeSliceFieldNode) Name() string + type TreeStructFieldNode struct + Field reflect.StructField + func (n *TreeStructFieldNode) Name() string + type Unmarshaler = func(in []byte, v interface{}) error + var JsonUnmarshaler Unmarshaler = json.Unmarshal + var TomlUnmarshaler Unmarshaler = toml.Unmarshal + var YamlUnmarshaler Unmarshaler = yaml.Unmarshal + type Validatable interface + Validate func() error