yq/pkg/yqlib/treeops/value_node_builder.go

21 lines
423 B
Go
Raw Normal View History

2020-10-16 01:47:31 +00:00
package treeops
import "gopkg.in/yaml.v3"
2020-10-19 05:14:29 +00:00
func BuildCandidateNodeFrom(token *Token) *CandidateNode {
2020-10-16 01:47:31 +00:00
var node yaml.Node = yaml.Node{Kind: yaml.ScalarNode}
2020-10-19 05:14:29 +00:00
node.Value = token.StringValue
2020-10-16 01:47:31 +00:00
2020-10-19 05:14:29 +00:00
switch token.Value.(type) {
2020-10-16 01:47:31 +00:00
case float32, float64:
node.Tag = "!!float"
case int, int64, int32:
node.Tag = "!!int"
case bool:
node.Tag = "!!bool"
case string:
node.Tag = "!!str"
}
return &CandidateNode{Node: &node}
}