import qualified Data.ByteString.Lazy as L
import Data.Char
import Data.Collections
+import Data.Convertible.Base
import Data.List (intersperse)
+import Data.Monoid
import Data.Ratio
import Data.Time
import Language.Haskell.TH.Lib
]
where
eTagToDoc ∷ ETag → Doc
- eTagToDoc = text ∘ A.toString ∘ A.fromAsciiBuilder ∘ printETag
+ eTagToDoc = text ∘ A.toString ∘ A.fromAsciiBuilder ∘ cs
mimeTypeToDoc ∷ MIMEType → Doc
mimeTypeToDoc = text ∘ A.toString ∘ A.fromAsciiBuilder ∘ printMIMEType
resourceDecl ∷ Input → Name → Q [Dec]
resourceDecl i symName
- = sequence [ sigD symName [t| ResourceDef |]
+ = sequence [ sigD symName [t| Resource |]
, valD (varP symName) (normalB (resourceE i)) decls
]
where
= []
resourceE ∷ Input → Q Exp
-resourceE i = [| emptyResource {
+resourceE i = [| mempty {
resGet = $(resGetE i)
, resHead = $(resHeadE i)
}
, qualifyAll "Data.Ascii" "A"
, qualifyAll "Data.ByteString.Char8" "B"
, qualifyAll "Data.ByteString.Lazy.Internal" "L"
- , qualifyAll "Data.Map" "M"
+ , qualifyAll "Data.CaseInsensitive" "CI"
+ , qualifyAll "Data.Collections" "C"
, qualifyAll "Data.Text" "T"
, unqualifyAll "Network.HTTP.Lucu.ETag" "Network.HTTP.Lucu"
, unqualifyAll "Network.HTTP.Lucu.Resource" "Network.HTTP.Lucu"
, unqualifyAll "Network.HTTP.Lucu.Resource.Internal" "Network.HTTP.Lucu"
- , unqualifyAll "Network.HTTP.Lucu.MIMEParams" "Network.HTTP.Lucu"
, unqualifyAll "Network.HTTP.Lucu.MIMEType" "Network.HTTP.Lucu"
, unqualify 'when "Control.Monad"
+ , unqualify 'mempty "Data.Monoid"
, unqualify '(%) "Data.Ratio"
, unqualify ''DiffTime "Data.Time"
, unqualifyIn 'ModifiedJulianDay ''Day "Data.Time"