X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=Network%2FHTTP%2FLucu%2FChunk.hs;h=27deb740821f9c68bd5b3159c08469513c7c222d;hb=9ac730212cb361eb10e5fe4ad0eec6758e2b200a;hp=342362c07959b21353d7334867277d4f285f9b45;hpb=cd1b58b84ff354e3fc2a7d2c8fd548a7b59fe138;p=Lucu.git diff --git a/Network/HTTP/Lucu/Chunk.hs b/Network/HTTP/Lucu/Chunk.hs index 342362c..27deb74 100644 --- a/Network/HTTP/Lucu/Chunk.hs +++ b/Network/HTTP/Lucu/Chunk.hs @@ -13,18 +13,21 @@ import Numeric chunkHeaderP :: Num a => Parser a chunkHeaderP = do hexLen <- many1 hexDigit - extension - crlf + _ <- extension + _ <- crlf let [(len, _)] = readHex hexLen return len where extension :: Parser () - extension = do many $ do char ';' - token - char '=' - token <|> quotedStr - return () + extension = many ( char ';' >> + token >> + char '=' >> + ( token <|> quotedStr ) + ) + >> + return () +{-# SPECIALIZE chunkHeaderP :: Parser Int #-} chunkFooterP :: Parser ()