Added recursive update map keys example

This commit is contained in:
Mike Farah
2025-03-03 15:10:42 +11:00
parent d74e70104f
commit ba1b9737b6
4 changed files with 36 additions and 1 deletions
+9
View File
@@ -72,6 +72,15 @@ var entriesOperatorScenarios = []expressionScenario{
"D0, P[], (!!map)::KEY_a: 1\nKEY_b: 2\n",
},
},
{
description: "Use with_entries to update keys recursively",
document: `{a: 1, b: {b_a: nested, b_b: thing}}`,
expression: `(.. | select(tag=="!!map")) |= with_entries(.key |= "KEY_" + .)`,
subdescription: "We use (.. | select(tag=\"map\")) to find all the maps in the doc, then |= to update each one of those maps. In the update, with_entries is used.",
expected: []string{
"D0, P[], (!!map)::{KEY_a: 1, KEY_b: {KEY_b_a: nested, KEY_b_b: thing}}\n",
},
},
{
skipDoc: true,
description: "Use with_entries to update keys comment",