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
か?