2
[object ["key1" .= "value1"], object ["key2" .= "value2"]]
ようアイソーンオブジェクトのリストを持っていると私は他の言語でJSONデータを扱うときにこれはかなり標準であり、この
object ["key1" .= "value1", "key2" .= "value2"]
のような単一アイソーンオブジェクトとしてそれらをマージしたいです(マージ操作)、私はAesonライブラリには何も似ていません。
私は何かを見逃していますが、これは標準的なhaskell関数で行うことができますか?私はsequence
を使ってみましたが、JSON Value
はモナドではありませんので、私はそれを行うことはできません。
私はちょうどリストはのみ JSONオブジェクトのを含んで考える
[{ "key1": value1 }, { "key2": value2 }]
をあなたがタイプでオブジェクトを持っている場合は、 'Object'が、それは単に' HashMap'ですので、あなたは 'HashMap.union'を使用することができます、 'mappend'、'(<>) 'などです。しかし、もしあなたが' Value'型のオブジェクトを持っているなら、それらをどのようにマージしたいですか?たとえば、文字列と数字がありますが、その結果はどうですか? – freestyle
私は 'unions'の動作がほしいだけです。すべてのキーとその値を持つMapが必要です。キーが重複している場合は、最後のキーを上書きすることができます。基本的に 'hash1.merge(hash2)'を実行したときにルビーと同じ動作をします。 – Batou99