Keyboard

↓ ↑
move between the rows you can see
→
open a feature, then step into it
←
close a feature, or step out to the one above
Enter
go to the page in focus
Tab
the same rows, plus everything else on the page
/
search the whole report
m
open or close the navigation drawer
Esc
leave the search box, or close the drawer
?
this list

Tells a map from a lookalike, and refuses a duplicate key

All 12 scenarios hold

These rules cover one cell value: strings, quoting, the three collection forms, and the errors a malformed value raises. The three collection forms are a list, a set, and a map.

This table holds three outcomes. A value that does not open a map captures as a plain string. A value that opens a map and does not complete it fails to parse. A map with a duplicate key is the third outcome. It is the only outcome where a complete value still fails, and the message names the key and quotes the map.

expected outcome broken scenario
ScenarioInputParsed type?Error message?
Quoted empty map"[:]"java.lang.String
Missing opening bracket:]java.lang.String
Unexpected leading charactera[:]java.lang.String
Missing closing bracket[:Failed to parse `[:`
Closed by the wrong delimiter[a: b}Failed to parse `[a: b}`
Double opening bracket[[:]Failed to parse `[[:]`
Double closing bracket[:]]Failed to parse `]`
Unexpected trailing character[:]aFailed to parse `a`
Missing element[a:b,]Failed to parse `[a:b,]`
Duplicate keys[a:b, a:c]Duplicate key `a` in map `[a:b, a:c]`
Duplicate quoted key[a:b, "a":c]Duplicate key `a` in map `[a:b, "a":c]`
Same key different value types[a:b, a:[b], a:{b}, a:[b:c]]Duplicate key `a` in map `[a:b, a:[b], a:{b}, a:[b:c]]`