yqlib

package
v1.0.3 Latest Latest
Warning

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

Go to latest
Published: Jul 26, 2026 License: MIT Imports: 51 Imported by: 0

Documentation

Overview

Use the top level Evaluator or StreamEvaluator to evaluate expressions and return matches.

Index

Constants

This section is empty.

Variables

View Source
var Base64Format = &Format{"base64", []string{},
	func() Encoder { return NewBase64Encoder() },
	func() Decoder { return NewBase64Decoder() },
}
View Source
var CSVFormat = &Format{"csv", []string{"c"},
	func() Encoder { return NewCsvEncoder(ConfiguredCsvPreferences) },
	func() Decoder { return NewCSVObjectDecoder(ConfiguredCsvPreferences) },
}
View Source
var ConfiguredCsvPreferences = NewDefaultCsvPreferences()
View Source
var ConfiguredHclPreferences = NewDefaultHclPreferences()
View Source
var ConfiguredINIPreferences = NewDefaultINIPreferences()
View Source
var ConfiguredJSONPreferences = NewDefaultJsonPreferences()
View Source
var ConfiguredKYamlPreferences = NewDefaultKYamlPreferences()
View Source
var ConfiguredLuaPreferences = NewDefaultLuaPreferences()
View Source
var ConfiguredPropertiesPreferences = NewDefaultPropertiesPreferences()
View Source
var ConfiguredSecurityPreferences = SecurityPreferences{
	DisableEnvOps:   false,
	DisableFileOps:  false,
	EnableSystemOps: false,
}
View Source
var ConfiguredShellVariablesPreferences = NewDefaultShellVariablesPreferences()
View Source
var ConfiguredTomlPreferences = NewDefaultTomlPreferences()
View Source
var ConfiguredTsvPreferences = NewDefaultTsvPreferences()
View Source
var ConfiguredXMLPreferences = NewDefaultXmlPreferences()
View Source
var ConfiguredYamlPreferences = NewDefaultYamlPreferences()
View Source
var HclFormat = &Format{"hcl", []string{"h", "tf"},
	func() Encoder { return NewHclEncoder(ConfiguredHclPreferences) },
	func() Decoder { return NewHclDecoder() },
}
View Source
var INIFormat = &Format{"ini", []string{"i"},
	func() Encoder { return NewINIEncoder() },
	func() Decoder { return NewINIDecoder(ConfiguredINIPreferences) },
}
View Source
var JSONFormat = &Format{"json", []string{"j"},
	func() Encoder { return NewJSONEncoder(ConfiguredJSONPreferences) },
	func() Decoder { return NewJSONDecoder() },
}
View Source
var KYamlFormat = &Format{"kyaml", []string{"ky"},
	func() Encoder { return NewKYamlEncoder(ConfiguredKYamlPreferences) },

	func() Decoder { return NewYamlDecoder(ConfiguredYamlPreferences) },
}
View Source
var LoadYamlPreferences = YamlPreferences{
	LeadingContentPreProcessing: false,
	PrintDocSeparators:          true,
	UnwrapScalar:                true,
	EvaluateTogether:            false,
}
View Source
var LuaFormat = &Format{"lua", []string{"l"},
	func() Encoder { return NewLuaEncoder(ConfiguredLuaPreferences) },
	func() Decoder { return NewLuaDecoder(ConfiguredLuaPreferences) },
}
View Source
var Now = time.Now

for unit tests

View Source
var PrettyPrintExp = `(... | (select(tag != "!!str"), select(tag == "!!str") | select(test("(?i)^(y|yes|n|no|on|off)$") | not))  ) style=""`
View Source
var PropertiesFormat = &Format{"props", []string{"p", "properties"},
	func() Encoder { return NewPropertiesEncoder(ConfiguredPropertiesPreferences) },
	func() Decoder { return NewPropertiesDecoder() },
}
View Source
var ShFormat = &Format{"", nil,
	func() Encoder { return NewShEncoder() },
	nil,
}
View Source
var ShellVariablesFormat = &Format{"shell", []string{"s", "sh"},
	func() Encoder { return NewShellVariablesEncoder() },
	nil,
}
View Source
var StringInterpolationEnabled = true
View Source
var TSVFormat = &Format{"tsv", []string{"t"},
	func() Encoder { return NewCsvEncoder(ConfiguredTsvPreferences) },
	func() Decoder { return NewCSVObjectDecoder(ConfiguredTsvPreferences) },
}
View Source
var TomlFormat = &Format{"toml", []string{},
	func() Encoder { return NewTomlEncoderWithPrefs(ConfiguredTomlPreferences) },
	func() Decoder { return NewTomlDecoder() },
}
View Source
var UriFormat = &Format{"uri", []string{},
	func() Encoder { return NewUriEncoder() },
	func() Decoder { return NewUriDecoder() },
}
View Source
var XMLFormat = &Format{"xml", []string{"x"},
	func() Encoder { return NewXMLEncoder(ConfiguredXMLPreferences) },
	func() Decoder { return NewXMLDecoder(ConfiguredXMLPreferences) },
}
View Source
var YamlFormat = &Format{"yaml", []string{"y", "yml"},
	func() Encoder { return NewYamlEncoder(ConfiguredYamlPreferences) },
	func() Decoder { return NewYamlDecoder(ConfiguredYamlPreferences) },
}

Functions

func ClearFilenameAliases

func ClearFilenameAliases()

ClearFilenameAliases removes all filename aliases.

func FormatStringFromFilename

func FormatStringFromFilename(filename string) string

func GetAvailableInputFormatString

func GetAvailableInputFormatString() string

func GetAvailableOutputFormatString

func GetAvailableOutputFormatString() string

func InitExpressionParser

func InitExpressionParser()

func KindString

func KindString(kind Kind) string

func MapToYamlStyle

func MapToYamlStyle(original Style) yaml.Style

func NewFrontMatterHandler

func NewFrontMatterHandler(originalFilename string) frontMatterHandler

func NewWriteInPlaceHandler

func NewWriteInPlaceHandler(inputFile string) writeInPlaceHandler

func NodeContentToString

func NodeContentToString(node *CandidateNode, depth int) string

func NodeToString

func NodeToString(node *CandidateNode) string

func NodesToString

func NodesToString(collection *list.List) string

use for debugging only

func PrintYAMLDocumentSeparator

func PrintYAMLDocumentSeparator(writer io.Writer, PrintDocSeparators bool) error

Some funcs are shared between encoder_yaml and encoder_kyaml

func PrintYAMLLeadingContent

func PrintYAMLLeadingContent(writer io.Writer, content string, PrintDocSeparators bool, ColorsEnabled bool) error

func ReadDocuments

func ReadDocuments(reader io.Reader, decoder Decoder) (*list.List, error)

func SafelyCloseReader

func SafelyCloseReader(reader io.Reader)

func SetFilenameAlias

func SetFilenameAlias(realPath string, displayName string)

SetFilenameAlias registers a display name for a file path so that the filename operator returns the original name instead of a temp path.

Types

type CandidateNode

type CandidateNode struct {
	Kind  Kind
	Style Style

	Tag     string
	Value   string
	Anchor  string
	Alias   *CandidateNode
	Content []*CandidateNode

	HeadComment string
	LineComment string
	FootComment string

	Parent *CandidateNode // parent node
	Key    *CandidateNode // node key, if this is a value from a map (or index in an array)

	LeadingContent string

	Line   int
	Column int

	// when performing op against all nodes given, this will treat all the nodes as one
	// (e.g. top level cross document merge). This property does not propagate to child nodes.
	EvaluateTogether bool
	IsMapKey         bool
	// EncodeHint controls how a mapping node is serialised by format-specific encoders
	// (e.g. TOML, HCL) that support both inline and block/section representations.
	EncodeHint EncodeHint
	// contains filtered or unexported fields
}

func (*CandidateNode) AddChild

func (n *CandidateNode) AddChild(rawChild *CandidateNode)

func (*CandidateNode) AddChildren

func (n *CandidateNode) AddChildren(children []*CandidateNode)

func (*CandidateNode) AddKeyValueChild

func (n *CandidateNode) AddKeyValueChild(rawKey *CandidateNode, rawValue *CandidateNode) (*CandidateNode, *CandidateNode)

func (*CandidateNode) AsList

func (n *CandidateNode) AsList() *list.List

func (*CandidateNode) CanVisitValues

func (n *CandidateNode) CanVisitValues() bool

func (*CandidateNode) ConvertToNodeInfo

func (n *CandidateNode) ConvertToNodeInfo() *NodeInfo

func (*CandidateNode) Copy

func (n *CandidateNode) Copy() *CandidateNode

func (*CandidateNode) CopyAsReplacement

func (n *CandidateNode) CopyAsReplacement(replacement *CandidateNode) *CandidateNode

func (*CandidateNode) CopyWithoutContent

func (n *CandidateNode) CopyWithoutContent() *CandidateNode

func (*CandidateNode) CreateChild

func (n *CandidateNode) CreateChild() *CandidateNode

func (*CandidateNode) CreateReplacement

func (n *CandidateNode) CreateReplacement(kind Kind, tag string, value string) *CandidateNode

func (*CandidateNode) CreateReplacementWithComments

func (n *CandidateNode) CreateReplacementWithComments(kind Kind, tag string, style Style) *CandidateNode

func (*CandidateNode) FilterMapContentByKey

func (n *CandidateNode) FilterMapContentByKey(keyPredicate func(*CandidateNode) bool) []*CandidateNode

func (*CandidateNode) GetDocument

func (n *CandidateNode) GetDocument() uint

func (*CandidateNode) GetFileIndex

func (n *CandidateNode) GetFileIndex() int

func (*CandidateNode) GetFilename

func (n *CandidateNode) GetFilename() string

func (*CandidateNode) GetKey

func (n *CandidateNode) GetKey() string

func (*CandidateNode) GetNicePath

func (n *CandidateNode) GetNicePath() string

func (*CandidateNode) GetPath

func (n *CandidateNode) GetPath() []interface{}

func (*CandidateNode) GetValueRep

func (n *CandidateNode) GetValueRep() (interface{}, error)

func (*CandidateNode) MarshalJSON

func (o *CandidateNode) MarshalJSON() ([]byte, error)

func (*CandidateNode) MarshalYAML

func (o *CandidateNode) MarshalYAML() (*yaml.Node, error)

func (*CandidateNode) SetDocument

func (n *CandidateNode) SetDocument(idx uint)

func (*CandidateNode) SetFileIndex

func (n *CandidateNode) SetFileIndex(idx int)

func (*CandidateNode) SetFilename

func (n *CandidateNode) SetFilename(name string)

func (*CandidateNode) SetParent

func (n *CandidateNode) SetParent(parent *CandidateNode)

func (*CandidateNode) UnmarshalGoccyYAML

func (o *CandidateNode) UnmarshalGoccyYAML(node ast.Node, cm yaml.CommentMap, anchorMap map[string]*CandidateNode) error

func (*CandidateNode) UnmarshalJSON

func (o *CandidateNode) UnmarshalJSON(data []byte) error

func (*CandidateNode) UnmarshalYAML

func (o *CandidateNode) UnmarshalYAML(node *yaml.Node, anchorMap map[string]*CandidateNode) error

func (*CandidateNode) UpdateAttributesFrom

func (n *CandidateNode) UpdateAttributesFrom(other *CandidateNode, prefs assignPreferences)

func (*CandidateNode) UpdateFrom

func (n *CandidateNode) UpdateFrom(other *CandidateNode, prefs assignPreferences)

updates this candidate from the given candidate node

func (*CandidateNode) VisitValues

func (n *CandidateNode) VisitValues(visitor ValueVisitor) error

type Context

type Context struct {
	MatchingNodes  *list.List
	Variables      map[string]*list.List
	DontAutoCreate bool
	// contains filtered or unexported fields
}

func (*Context) ChildContext

func (n *Context) ChildContext(results *list.List) Context

func (*Context) Clone

func (n *Context) Clone() Context

func (*Context) DeepClone

func (n *Context) DeepClone() Context

func (*Context) GetDateTimeLayout

func (n *Context) GetDateTimeLayout() string

func (*Context) GetVariable

func (n *Context) GetVariable(name string) *list.List

func (*Context) ReadOnlyClone

func (n *Context) ReadOnlyClone() Context

func (*Context) SetDateTimeLayout

func (n *Context) SetDateTimeLayout(newDateTimeLayout string)

func (*Context) SetVariable

func (n *Context) SetVariable(name string, value *list.List)

func (*Context) SingleChildContext

func (n *Context) SingleChildContext(candidate *CandidateNode) Context

func (*Context) SingleReadonlyChildContext

func (n *Context) SingleReadonlyChildContext(candidate *CandidateNode) Context

func (*Context) ToString

func (n *Context) ToString() string

func (*Context) WritableClone

func (n *Context) WritableClone() Context

type CsvPreferences

type CsvPreferences struct {
	Separator rune
	AutoParse bool
}

func NewDefaultCsvPreferences

func NewDefaultCsvPreferences() CsvPreferences

func NewDefaultTsvPreferences

func NewDefaultTsvPreferences() CsvPreferences

type DataTreeNavigator

type DataTreeNavigator interface {
	// given the context and an expressionNode,
	// this will process the against the given expressionNode and return
	// a new context of matching candidates
	GetMatchingNodes(context Context, expressionNode *ExpressionNode) (Context, error)

	DeeplyAssign(context Context, path []interface{}, rhsNode *CandidateNode) error
}

func NewDataTreeNavigator

func NewDataTreeNavigator() DataTreeNavigator

type Decoder

type Decoder interface {
	Init(reader io.Reader) error
	Decode() (*CandidateNode, error)
}

func NewBase64Decoder

func NewBase64Decoder() Decoder

func NewCSVObjectDecoder

func NewCSVObjectDecoder(prefs CsvPreferences) Decoder

func NewGoccyYAMLDecoder

func NewGoccyYAMLDecoder() Decoder

func NewHclDecoder

func NewHclDecoder() Decoder

func NewINIDecoder

func NewINIDecoder(prefs INIPreferences) Decoder

func NewJSONDecoder

func NewJSONDecoder() Decoder

func NewLuaDecoder

func NewLuaDecoder(prefs LuaPreferences) Decoder

func NewPropertiesDecoder

func NewPropertiesDecoder() Decoder

func NewTomlDecoder

func NewTomlDecoder() Decoder

func NewUriDecoder

func NewUriDecoder() Decoder

func NewXMLDecoder

func NewXMLDecoder(prefs XmlPreferences) Decoder

func NewYamlDecoder

func NewYamlDecoder(prefs YamlPreferences) Decoder

type DecoderFactoryFunction

type DecoderFactoryFunction func() Decoder

type EncodeHint

type EncodeHint int

EncodeHint controls how a mapping node is serialised by format-specific encoders that distinguish between inline and block/section representations (e.g. TOML, HCL).

const (
	// EncodeHintDefault lets the encoder choose the representation (e.g. TOML block
	// mappings default to [section] headers).
	EncodeHintDefault EncodeHint = iota
	// EncodeHintSeparateBlock forces the node to be emitted as a separate block or
	// table-section header (used by TOML [section] and HCL block decoders).
	EncodeHintSeparateBlock
	// EncodeHintInline forces the node to be emitted as an inline / flow table
	// (used by TOML inline-table decoder and TOML encoder).
	EncodeHintInline
)

type Encoder

type Encoder interface {
	Encode(writer io.Writer, node *CandidateNode) error
	PrintDocumentSeparator(writer io.Writer) error
	PrintLeadingContent(writer io.Writer, content string) error
	CanHandleAliases() bool
}

func NewBase64Encoder

func NewBase64Encoder() Encoder

func NewCsvEncoder

func NewCsvEncoder(prefs CsvPreferences) Encoder

func NewHclEncoder

func NewHclEncoder(prefs HclPreferences) Encoder

NewHclEncoder creates a new HCL encoder

func NewINIEncoder

func NewINIEncoder() Encoder

NewINIEncoder creates a new INI encoder

func NewJSONEncoder

func NewJSONEncoder(prefs JsonPreferences) Encoder

func NewKYamlEncoder

func NewKYamlEncoder(prefs KYamlPreferences) Encoder

func NewLuaEncoder

func NewLuaEncoder(prefs LuaPreferences) Encoder

func NewPropertiesEncoder

func NewPropertiesEncoder(prefs PropertiesPreferences) Encoder

func NewShEncoder

func NewShEncoder() Encoder

func NewShellVariablesEncoder

func NewShellVariablesEncoder() Encoder

func NewTomlEncoder

func NewTomlEncoder() Encoder

func NewTomlEncoderWithPrefs

func NewTomlEncoderWithPrefs(prefs TomlPreferences) Encoder

func NewUriEncoder

func NewUriEncoder() Encoder

func NewXMLEncoder

func NewXMLEncoder(prefs XmlPreferences) Encoder

func NewYamlEncoder

func NewYamlEncoder(prefs YamlPreferences) Encoder

type EncoderFactoryFunction

type EncoderFactoryFunction func() Encoder

type Evaluator

type Evaluator interface {
	EvaluateFiles(expression string, filenames []string, printer Printer, decoder Decoder) error

	// EvaluateNodes takes an expression and one or more yaml nodes, returning a list of matching candidate nodes
	EvaluateNodes(expression string, nodes ...*CandidateNode) (*list.List, error)

	// EvaluateCandidateNodes takes an expression and list of candidate nodes, returning a list of matching candidate nodes
	EvaluateCandidateNodes(expression string, inputCandidateNodes *list.List) (*list.List, error)
}

A yaml expression evaluator that runs the expression once against all files/nodes in memory.

func NewAllAtOnceEvaluator

func NewAllAtOnceEvaluator() Evaluator

type ExpressionNode

type ExpressionNode struct {
	Operation *Operation
	LHS       *ExpressionNode
	RHS       *ExpressionNode
	Parent    *ExpressionNode
}

type ExpressionParserInterface

type ExpressionParserInterface interface {
	ParseExpression(expression string) (*ExpressionNode, error)
}
var ExpressionParser ExpressionParserInterface

type Format

type Format struct {
	FormalName     string
	Names          []string
	EncoderFactory EncoderFactoryFunction
	DecoderFactory DecoderFactoryFunction
}

func FormatFromString

func FormatFromString(format string) (*Format, error)

func GetAvailableInputFormats

func GetAvailableInputFormats() []*Format

func GetAvailableOutputFormats

func GetAvailableOutputFormats() []*Format

func (*Format) GetConfiguredEncoder

func (f *Format) GetConfiguredEncoder() Encoder

func (*Format) MatchesName

func (f *Format) MatchesName(name string) bool

type HclPreferences

type HclPreferences struct {
	ColorsEnabled bool
}

func NewDefaultHclPreferences

func NewDefaultHclPreferences() HclPreferences

func (*HclPreferences) Copy

func (p *HclPreferences) Copy() HclPreferences

type INIPreferences

type INIPreferences struct {
	ColorsEnabled           bool
	PreserveSurroundedQuote bool
}

func NewDefaultINIPreferences

func NewDefaultINIPreferences() INIPreferences

func (*INIPreferences) Copy

func (p *INIPreferences) Copy() INIPreferences

type JsonPreferences

type JsonPreferences struct {
	Indent        int
	ColorsEnabled bool
	UnwrapScalar  bool
}

func NewDefaultJsonPreferences

func NewDefaultJsonPreferences() JsonPreferences

func (*JsonPreferences) Copy

func (p *JsonPreferences) Copy() JsonPreferences

type KYamlPreferences

type KYamlPreferences struct {
	Indent             int
	ColorsEnabled      bool
	PrintDocSeparators bool
	UnwrapScalar       bool
}

func NewDefaultKYamlPreferences

func NewDefaultKYamlPreferences() KYamlPreferences

func (*KYamlPreferences) Copy

type Kind

type Kind uint32
const (
	SequenceNode Kind = 1 << iota
	MappingNode
	ScalarNode
	AliasNode
)

type Logger

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

Logger wraps log/slog providing a printf-style interface used throughout yq.

func GetLogger

func GetLogger() *Logger

GetLogger returns the yq logger instance.

func (*Logger) Debug

func (l *Logger) Debug(msg string)

func (*Logger) Debugf

func (l *Logger) Debugf(format string, args ...interface{})

func (*Logger) Error

func (l *Logger) Error(msg string)

func (*Logger) Errorf

func (l *Logger) Errorf(format string, args ...interface{})

func (*Logger) GetLevel

func (l *Logger) GetLevel() slog.Level

GetLevel returns the current log level.

func (*Logger) Info

func (l *Logger) Info(msg string)

func (*Logger) Infof

func (l *Logger) Infof(format string, args ...interface{})

func (*Logger) IsEnabledFor

func (l *Logger) IsEnabledFor(level slog.Level) bool

IsEnabledFor returns true if the given level is enabled.

func (*Logger) SetLevel

func (l *Logger) SetLevel(level slog.Level)

SetLevel sets the minimum log level.

func (*Logger) SetSlogger

func (l *Logger) SetSlogger(logger *slog.Logger)

SetSlogger replaces the underlying slog.Logger (e.g. to configure output format).

func (*Logger) Warning

func (l *Logger) Warning(msg string)

func (*Logger) Warningf

func (l *Logger) Warningf(format string, args ...interface{})

type LuaPreferences

type LuaPreferences struct {
	DocPrefix    string
	DocSuffix    string
	UnquotedKeys bool
	Globals      bool
}

func NewDefaultLuaPreferences

func NewDefaultLuaPreferences() LuaPreferences

type NodeInfo

type NodeInfo struct {
	Kind        string      `yaml:"kind"`
	Style       string      `yaml:"style,omitempty"`
	Anchor      string      `yaml:"anchor,omitempty"`
	Tag         string      `yaml:"tag,omitempty"`
	HeadComment string      `yaml:"headComment,omitempty"`
	LineComment string      `yaml:"lineComment,omitempty"`
	FootComment string      `yaml:"footComment,omitempty"`
	Value       string      `yaml:"value,omitempty"`
	Line        int         `yaml:"line,omitempty"`
	Column      int         `yaml:"column,omitempty"`
	Content     []*NodeInfo `yaml:"content,omitempty"`
}

type Operation

type Operation struct {
	OperationType *operationType
	Value         interface{}
	StringValue   string
	CandidateNode *CandidateNode // used for Value Path elements
	Preferences   interface{}
	UpdateAssign  bool // used for assign ops, when true it means we evaluate the rhs given the lhs
}

type Printer

type Printer interface {
	PrintResults(matchingNodes *list.List) error
	PrintedAnything() bool
	//e.g. when given a front-matter doc, like jekyll
	SetAppendix(reader io.Reader)
	SetNulSepOutput(nulSepOutput bool)
}

func NewNodeInfoPrinter

func NewNodeInfoPrinter(printerWriter PrinterWriter) Printer

func NewPrinter

func NewPrinter(encoder Encoder, printerWriter PrinterWriter) Printer

type PrinterWriter

type PrinterWriter interface {
	GetWriter(node *CandidateNode) (*bufio.Writer, error)
}

func NewMultiPrinterWriter

func NewMultiPrinterWriter(expression *ExpressionNode, format *Format) PrinterWriter

func NewSinglePrinterWriter

func NewSinglePrinterWriter(writer io.Writer) PrinterWriter

type PropertiesPreferences

type PropertiesPreferences struct {
	UnwrapScalar      bool
	KeyValueSeparator string
	UseArrayBrackets  bool
}

func NewDefaultPropertiesPreferences

func NewDefaultPropertiesPreferences() PropertiesPreferences

func (*PropertiesPreferences) Copy

type SecurityPreferences

type SecurityPreferences struct {
	DisableEnvOps   bool
	DisableFileOps  bool
	EnableSystemOps bool
}

type ShellVariablesPreferences

type ShellVariablesPreferences struct {
	KeySeparator string
	UnwrapScalar bool
}

func NewDefaultShellVariablesPreferences

func NewDefaultShellVariablesPreferences() ShellVariablesPreferences

type StreamEvaluator

type StreamEvaluator interface {
	Evaluate(filename string, reader io.Reader, node *ExpressionNode, printer Printer, decoder Decoder) (uint, error)
	EvaluateFiles(expression string, filenames []string, printer Printer, decoder Decoder) error
	EvaluateNew(expression string, printer Printer) error
}

A yaml expression evaluator that runs the expression multiple times for each given yaml document. Uses less memory than loading all documents and running the expression once, but this cannot process cross document expressions.

func NewStreamEvaluator

func NewStreamEvaluator() StreamEvaluator

type StringEvaluator

type StringEvaluator interface {
	Evaluate(expression string, input string, encoder Encoder, decoder Decoder) (string, error)
	EvaluateAll(expression string, input string, encoder Encoder, decoder Decoder) (string, error)
}

func NewStringEvaluator

func NewStringEvaluator() StringEvaluator

type Style

type Style uint32
const (
	TaggedStyle Style = 1 << iota
	DoubleQuotedStyle
	SingleQuotedStyle
	LiteralStyle
	FoldedStyle
	FlowStyle
)

func MapYamlStyle

func MapYamlStyle(original yaml.Style) Style

type TomlPreferences

type TomlPreferences struct {
	ColorsEnabled bool
}

func NewDefaultTomlPreferences

func NewDefaultTomlPreferences() TomlPreferences

func (*TomlPreferences) Copy

func (p *TomlPreferences) Copy() TomlPreferences

type ValueVisitor

type ValueVisitor func(*CandidateNode) error

type XmlPreferences

type XmlPreferences struct {
	Indent          int
	AttributePrefix string
	ContentName     string
	StrictMode      bool
	KeepNamespace   bool
	UseRawToken     bool
	ProcInstPrefix  string
	DirectiveName   string
	SkipProcInst    bool
	SkipDirectives  bool
}

func NewDefaultXmlPreferences

func NewDefaultXmlPreferences() XmlPreferences

func (*XmlPreferences) Copy

func (p *XmlPreferences) Copy() XmlPreferences

type YamlPreferences

type YamlPreferences struct {
	Indent                      int
	ColorsEnabled               bool
	LeadingContentPreProcessing bool
	PrintDocSeparators          bool
	UnwrapScalar                bool
	EvaluateTogether            bool
	FixMergeAnchorToSpec        bool
	CompactSequenceIndent       bool
}

func NewDefaultYamlPreferences

func NewDefaultYamlPreferences() YamlPreferences

func (*YamlPreferences) Copy

func (p *YamlPreferences) Copy() YamlPreferences

Source Files

Jump to

Keyboard shortcuts

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