Ich habe eine Reihe von verschachtelten JSON-Objekte mit beliebigen Schlüsseln.Arbitrary JSON Schlüssel mit Aeson - Haskell
{
"A": {
"B": {
"C": "hello"
}
}
}
Wo A
, B
, C
vor der Zeit nicht bekannt sind. Jeder dieser drei könnte auch Geschwister haben.
Ich frage mich, ob es eine Möglichkeit gibt, dies in einen benutzerdefinierten Typ mit Aeson in einige elegante Weise zu analysieren. Was ich getan habe, ist es in ein Aeson Object
zu laden.
Wie würden Sie die FromJSON
für diese Art von JSON Objekt implementieren?
Danke!
bearbeiten:
{
"USA": {
"California": {
"San Francisco": "Some text"
}
},
"Canada": {
...
}
}
Dies sollte zu CountryDatabase
kompilieren, wo ...
type City = Map String String
type Country = Map String City
type CountryDatabase = Map String Country
Es ist nicht wirklich klar * wie * möchten Sie diesen JSON parsen. Hat es immer nur 3 verschachtelte Schlüssel und dann die Zeichenfolge? –
Können Sie ein Beispiel für den benutzerdefinierten Typ angeben, in den Sie einlesen möchten? Ich denke, das würde die Frage klären. –
Frage aktualisiert mit einem konkreteren Beispiel der Datenstrukturen. –