cmdyaml

package
v0.0.0-...-e2c53ed Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2024 License: Apache-2.0 Imports: 11 Imported by: 7

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ErrorWithSource

func ErrorWithSource(spec []byte, err error) error

ErrorWithSource returns an error that includes the yaml source code that was the cause of the error to help with debugging YAML errors. Note that the errors reported for the yaml parser may be inaccurate in terms of the lines the error is reported on. This seems to be particularly true for lists where errors with use of tabs to indent are often reported against the previous line rather than the offending one.

func ParseConfig

func ParseConfig(spec []byte, cfg interface{}) error

ParseConfig will parse the yaml config in spec into the requested type. It provides improved error reporting via ErrorWithSource.

func ParseConfigFile

func ParseConfigFile(ctx context.Context, filename string, cfg interface{}) error

ParseConfigFile reads a yaml config file as per ParseConfig using file.FSReadFile to read the file. The use of FSReadFile allows for the configuration file to be read from storage system, including from embed.FS, instead of the local filesystem if an instance of fs.ReadFileFS is stored in the context.

func ParseConfigString

func ParseConfigString(spec string, cfg interface{}) error

ParseConfigString is like ParseConfig but for a string.

Types

type FlexTime

type FlexTime time.Time

FlexTime is a time.Time that can be unmarshaled from time.RFC3339, time.DateTime, time.TimeOnly or time.DateOnly formats. It is always marshaled to time.RFC3339.

func (*FlexTime) MarshalYAML

func (t *FlexTime) MarshalYAML() (interface{}, error)

func (FlexTime) String

func (t FlexTime) String() string

func (*FlexTime) UnmarshalYAML

func (t *FlexTime) UnmarshalYAML(value *yaml.Node) error

type RFC3339Time

type RFC3339Time time.Time

RFC3339Time is a time.Time that marshals to and from RFC3339 format.

func (*RFC3339Time) MarshalYAML

func (t *RFC3339Time) MarshalYAML() (interface{}, error)

func (RFC3339Time) String

func (t RFC3339Time) String() string

func (*RFC3339Time) UnmarshalYAML

func (t *RFC3339Time) UnmarshalYAML(value *yaml.Node) error

Jump to

Keyboard shortcuts

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