package yaml

import "cuelang.org/go/encoding/yaml"

Package yaml converts YAML encodings to and from CUE. When converting to CUE, comments and position information are retained.

Index

Functions

func Decode

func Decode(r *cue.Runtime, filename string, src interface{}) (*cue.Instance, error)

Decode converts a YAML file to a CUE value. Streams are returned as a list of the streamed values.

Deprecated: use Extract and build the File with cue.Context.BuildFile.

func Encode

func Encode(v cue.Value) ([]byte, error)

Encode returns the YAML encoding of v.

func EncodeStream

func EncodeStream(iter cue.Iterator) ([]byte, error)

EncodeStream returns the YAML encoding of iter, where consecutive values of iter are separated with a `---`.

func Extract

func Extract(filename string, src interface{}) (*ast.File, error)

Extract parses the YAML specified by src to a CUE expression. If there's more than one document, the documents will be returned as a list. The src argument may be a nil, string, []byte, or io.Reader. If src is nil, the result of reading the file specified by filename will be used.

func Validate

func Validate(b []byte, v cue.Value) error

Validate validates the YAML and confirms it matches the constraints specified by v. For YAML streams, all values must match v.

Source Files

yaml.go

Version
v0.9.1
Published
Jun 12, 2024
Platform
linux/amd64
Imports
7 packages
Last checked
8 minutes ago

Tools for package owners.