fix: correct key order after add, flatten, keys, sort, reverse and shuffle

Signed-off-by: Antoine Deschênes <antoine.deschenes@linux.com>
This commit is contained in:
Antoine Deschênes
2025-06-07 21:04:26 +10:00
committed by Mike Farah
parent b84fd47934
commit b15ce77cad
9 changed files with 93 additions and 34 deletions
+7 -8
View File
@@ -239,14 +239,13 @@ func (n *CandidateNode) AddKeyValueChild(rawKey *CandidateNode, rawValue *Candid
func (n *CandidateNode) AddChild(rawChild *CandidateNode) {
value := rawChild.Copy()
value.SetParent(n)
if value.Key != nil {
value.Key.SetParent(n)
} else {
index := len(n.Content)
keyNode := createScalarNode(index, fmt.Sprintf("%v", index))
keyNode.SetParent(n)
value.Key = keyNode
}
value.IsMapKey = false
index := len(n.Content)
keyNode := createScalarNode(index, fmt.Sprintf("%v", index))
keyNode.SetParent(n)
value.Key = keyNode
n.Content = append(n.Content, value)
}