diff options
author | stuebinm | 2022-10-11 13:39:16 +0200 |
---|---|---|
committer | stuebinm | 2022-10-11 13:39:16 +0200 |
commit | 4caded904c54d1cd85bf54239517e93650a404f5 (patch) | |
tree | ce150d3588aa766c12ee6bb3e3ed3aea73615d43 /tiled/Data/Tiled/TH.hs | |
parent | e4b0ae395f3207f4bbaebbf42a3d3a28a516489d (diff) |
use template haskell aeson, not generics
this has been bothering me for MONTHS, and it compiles faster now. also fixed some warnings
Diffstat (limited to 'tiled/Data/Tiled/TH.hs')
-rw-r--r-- | tiled/Data/Tiled/TH.hs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tiled/Data/Tiled/TH.hs b/tiled/Data/Tiled/TH.hs new file mode 100644 index 0000000..e0ad0e8 --- /dev/null +++ b/tiled/Data/Tiled/TH.hs @@ -0,0 +1,15 @@ +module Data.Tiled.TH where + +import Universum + +import qualified Data.Aeson.TH as TH +import Data.Char (toLower) + +aesonOptions :: Int -> TH.Options +aesonOptions l = TH.defaultOptions + { TH.omitNothingFields = True + , TH.rejectUnknownFields = True + -- can't be bothered to do a nicer prefix strip + , TH.fieldLabelModifier = drop l . map toLower + , TH.sumEncoding = TH.UntaggedValue + } |