git.iko.soy/typeable/http-api-data
on master help sign in
Use TypeSynonymInstances for Web.HttpApiData
commitf2b4a2acc12335236af3ae3aedf597307220cb0c authorNickolay Kudasov <nickolay.kudasov@gmail.com> dateSun 4 Oct 2015, 02:22 (11 years ago) parentf0a5c50
2 files changed+7−3
Web/HttpApiData.hs+3−2 Web/PathPieces.hs+4−1
Web/HttpApiData.hs+3−2
@@ -1,6 +1,7 @@
11{-# LANGUAGE DefaultSignatures #-}
22{-# LANGUAGE FlexibleInstances #-}
33{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TypeSynonymInstances #-}
45module Web.HttpApiData (
56 ToHttpApiData (..),
67 FromHttpApiData (..),
@@ -93,7 +94,7 @@ instance ToHttpApiData Word8 where toUrlPiece = showUrlPiece
9394instance ToHttpApiData Word16 where toUrlPiece = showUrlPiece
9495instance ToHttpApiData Word32 where toUrlPiece = showUrlPiece
9596instance ToHttpApiData Word64 where toUrlPiece = showUrlPiece
96−instance ToHttpApiData [Char] where toUrlPiece = Text.pack
97+instance ToHttpApiData String where toUrlPiece = Text.pack
9798instance ToHttpApiData Text where toUrlPiece = id
9899instance ToHttpApiData TL.Text where toUrlPiece = TL.toStrict
99100instance ToHttpApiData Day where toUrlPiece = showUrlPiece
@@ -112,7 +113,7 @@ instance FromHttpApiData Word8 where parseUrlPiece = runReader decimal
112113instance FromHttpApiData Word16 where parseUrlPiece = runReader decimal
113114instance FromHttpApiData Word32 where parseUrlPiece = runReader decimal
114115instance FromHttpApiData Word64 where parseUrlPiece = runReader decimal
115−instance FromHttpApiData [Char] where parseUrlPiece = Right . Text.unpack
116+instance FromHttpApiData String where parseUrlPiece = Right . Text.unpack
116117instance FromHttpApiData Text where parseUrlPiece = Right
117118instance FromHttpApiData TL.Text where parseUrlPiece = Right . TL.fromStrict
118119instance FromHttpApiData Day where parseUrlPiece = readEitherUrlPiece
Web/PathPieces.hs+4−1
@@ -1,4 +1,7 @@
1−{-# LANGUAGE FlexibleInstances, TypeSynonymInstances, OverloadedStrings, DefaultSignatures #-}
1+{-# LANGUAGE DefaultSignatures #-}
2+{-# LANGUAGE FlexibleInstances #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TypeSynonymInstances #-}
25module Web.PathPieces
36 ( PathPiece (..)
47 , PathMultiPiece (..)