Documentation ¶
Index ¶
- func Add(m *yaml.Node, name string, val string)
- func AddMap(parent *yaml.Node, name string) *yaml.Node
- func Clone(node *yaml.Node) *yaml.Node
- func RemoveFromMap(node *yaml.Node, name string) error
- func SetMapValue(parent *yaml.Node, name string, val *yaml.Node)
- func SetSequenceValue(parent *yaml.Node, val *yaml.Node, sidx int)
- func ToJson(node *yaml.Node) string
- func ToSJson(node *yaml.Node) string
- func YamlVal(n *yaml.Node) (any, error)
- type NodePair
- type SNode
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AddMap ¶ added in v1.7.0
func AddMap(parent *yaml.Node, name string) *yaml.Node
AddMap adds a new map to the parent node
func RemoveFromMap ¶ added in v1.4.0
Remove a map key-value pair from node.Content
func SetMapValue ¶ added in v1.4.0
func SetMapValue(parent *yaml.Node, name string, val *yaml.Node)
Add or replace a map value
func SetSequenceValue ¶ added in v1.8.0
func SetSequenceValue(parent *yaml.Node, val *yaml.Node, sidx int)
Set the value of a sequence element within the node
Types ¶
type NodePair ¶ added in v1.4.0
type NodePair struct { Key *yaml.Node Value *yaml.Node // Parent is used by modules to reference the parent template resource Parent *NodePair }
NodePair represents a !!map key-value pair
func GetParent ¶ added in v1.4.0
func GetParent(node *yaml.Node, rootNode *yaml.Node, priorNode *yaml.Node) NodePair
Returns the parent node of node, paired with its name if it's a map pair. If it is not a map pair, only NodePair.Value is not nil. (YAML maps are arrays with even indexes being names and odd indexes being values)
node
Content 0: Name 1: Map Content 0: a 1: b
In the above, if I want b's parent node pair, I get [Name, Map] This allows us to ask "what is the parent's name", which is useful for knowing the logical name of the resource a node belongs to.
For sequence elements that are maps, the Key will be nil