aesonパッケージを使用しています。Data.Tree宣言で使用するデータ型があります。次のように、より複雑になります。
data Foo = Foo {
bat :: Text
, xux :: Maybe Text
, tri :: Tree Text
}
このタイプのインスタンスData.Aeson.THを生成するために使用したいと思います。FromJSON
$(deriveJSON defaultOptions ''Foo)
ただしData.Tree、 の標準インスタンスはありませんFromJSON。つまり、孤立したインスタンスを宣言する必要があります。
孤立したインスタンスの作成を回避する方法はありますが、引き続き使用できますderiveJSONか?