--- |This operator appends a @(name, value)@ pair to a MIME Type.
-(<:>) :: MIMEType -> (String, String) -> MIMEType
-mt@(MIMEType _ _ params) <:> pair
- = pair `seq`
- mt {
- mtParams = mtParams mt ++ [pair]
- }
-
--- |This operator takes two strings and makes a tuple of them. So you
--- can say
---
--- > "text" </> "xml" <:> "charset" <=> "UTF-8" <:> "q" <=> "0.9"
---
--- to represent \"text\/xml; charset=UTF-8; q=0.9\".
-(<=>) :: String -> String -> (String, String)
-name <=> value = (name, value)
-
-
-mimeTypeP :: Parser MIMEType
-mimeTypeP = allowEOF $!
- do maj <- token
- char '/'
- min <- token
- params <- many paramP
+mimeTypeP ∷ Parser MIMEType
+mimeTypeP = do maj ← A.toCIAscii <$> token
+ _ ← char '/'
+ min ← A.toCIAscii <$> token
+ params ← paramsP