summaryrefslogtreecommitdiff
path: root/overlays/spm/lib/Data/CaseInsensitive
diff options
context:
space:
mode:
Diffstat (limited to 'overlays/spm/lib/Data/CaseInsensitive')
-rw-r--r--overlays/spm/lib/Data/CaseInsensitive/Instances.hs22
1 files changed, 22 insertions, 0 deletions
diff --git a/overlays/spm/lib/Data/CaseInsensitive/Instances.hs b/overlays/spm/lib/Data/CaseInsensitive/Instances.hs
new file mode 100644
index 00000000..1476b9d9
--- /dev/null
+++ b/overlays/spm/lib/Data/CaseInsensitive/Instances.hs
@@ -0,0 +1,22 @@
1{-# OPTIONS_GHC -fno-warn-orphans #-}
2
3module Data.CaseInsensitive.Instances () where
4
5import Prelude
6
7import Data.CaseInsensitive (CI)
8import qualified Data.CaseInsensitive as CI
9
10import Servant.API.ContentTypes
11
12import Data.Aeson
13
14
15instance MimeRender PlainText a => MimeRender PlainText (CI a) where
16 mimeRender p = mimeRender p . CI.original
17
18instance ToJSON a => ToJSON (CI a) where
19 toJSON = toJSON . CI.original
20
21instance (FromJSON a, CI.FoldCase a) => FromJSON (CI a) where
22 parseJSON = fmap CI.mk . parseJSON