]> gitweb @ CieloNegro.org - Lucu.git/blobdiff - Network/HTTP/Lucu/Chunk.hs
Reimplement MultipartForm
[Lucu.git] / Network / HTTP / Lucu / Chunk.hs
index 25d69078b79387a8afc6aad93fcb02dfb65f4b70..e8c9de41286c4fb3240425843acc67c52e565db5 100644 (file)
@@ -2,9 +2,9 @@
     UnicodeSyntax
   #-}
 module Network.HTTP.Lucu.Chunk
-    ( chunkHeaderP
-    , chunkFooterP
-    , chunkTrailerP
+    ( chunkHeader
+    , chunkFooter
+    , chunkTrailer
     )
     where
 import Control.Applicative
@@ -13,23 +13,22 @@ import Data.Bits
 import Network.HTTP.Lucu.Headers
 import Network.HTTP.Lucu.Parser.Http
 
-chunkHeaderP ∷ (Integral a, Bits a) ⇒ Parser a
-{-# INLINEABLE chunkHeaderP #-}
-chunkHeaderP = do len ← hexadecimal
-                  extension
-                  crlf
-                  return len
+chunkHeader ∷ (Integral a, Bits a) ⇒ Parser a
+{-# INLINEABLE chunkHeader #-}
+chunkHeader = do len ← hexadecimal
+                 extension
+                 crlf
+                 return len
     where
       extension ∷ Parser ()
-      extension = skipMany $
-                  do _ ← char ';'
-                     _ ← token
-                     _ ← char '='
-                     _ ← token <|> quotedStr
-                     return ()
+      extension
+          = skipMany ( char ';' *>
+                       token    *>
+                       char '=' *>
+                       (token <|> quotedStr) )
 
-chunkFooterP ∷ Parser ()
-chunkFooterP = crlf
+chunkFooter ∷ Parser ()
+chunkFooter = crlf
 
-chunkTrailerP ∷ Parser Headers
-chunkTrailerP = headersP
+chunkTrailer ∷ Parser Headers
+chunkTrailer = headers