最新版本的 Data.Aeson 改变了 ToJSON 和 FromJSON 适用于简单类型的方式,例如:
data Permission = Read | Write
它曾经是通用调用:
instance ToJSON Permission where
...将创建看起来像 {"Read":[]} 或 {"Write":[]} 的 JSON。
但现在它创建了:
{tag:"Read",contents:"[]"}
这是有道理的,但会破坏我编写的代码。我手工编写了一个 toJSON 部分以提供正确的外观,但编写 fromJSON 让我感到困惑。
有任何想法吗?
谢谢