diff --git a/src/Language/Haskell/Brittany/Config.hs b/src/Language/Haskell/Brittany/Config.hs index e91f698..e9a0c33 100644 --- a/src/Language/Haskell/Brittany/Config.hs +++ b/src/Language/Haskell/Brittany/Config.hs @@ -154,4 +154,4 @@ readMergePersConfig path shouldCreate conf = do showConfigYaml :: Config -> String showConfigYaml = Data.ByteString.Char8.unpack . Data.Yaml.encode - . cMap (\(Identity x) -> Option (Just x)) + . cMap (\(Identity x) -> Just x) diff --git a/src/Language/Haskell/Brittany/Config/Types.hs b/src/Language/Haskell/Brittany/Config/Types.hs index 15995d8..3d995ce 100644 --- a/src/Language/Haskell/Brittany/Config/Types.hs +++ b/src/Language/Haskell/Brittany/Config/Types.hs @@ -163,9 +163,11 @@ aesonDecodeOptionsBrittany = Aeson.defaultOptions parseJSON = fmap (cMap Option) . parseJSON #define makeToJSONMaybe(type)\ instance ToJSON (type Maybe) where\ + toJSON = Aeson.genericToJSON aesonDecodeOptionsBrittany;\ toEncoding = Aeson.genericToEncoding aesonDecodeOptionsBrittany #define makeToJSONOption(type)\ instance ToJSON (type Option) where\ + toJSON = toJSON . cMap getOption;\ toEncoding = toEncoding . cMap getOption makeFromJSON(ErrorHandlingConfigFMaybe)