X-Git-Url: http://git.cielonegro.org/gitweb.cgi?p=Lucu.git;a=blobdiff_plain;f=Network%2FHTTP%2FLucu%2FParser%2FHttp.hs;h=520034247726f3ec6398eb8b69b143eb08456ceb;hp=4138db23ad81c3a8777976a21b74fa9fe94fcb55;hb=b923d45;hpb=0a300483f71cbbbe84b5781849f33692c2832864 diff --git a/Network/HTTP/Lucu/Parser/Http.hs b/Network/HTTP/Lucu/Parser/Http.hs index 4138db2..5200342 100644 --- a/Network/HTTP/Lucu/Parser/Http.hs +++ b/Network/HTTP/Lucu/Parser/Http.hs @@ -87,8 +87,7 @@ isToken !c listOf ∷ Parser a → Parser [a] {-# INLINEABLE listOf #-} listOf p - = try $ - do skipMany lws + = do skipMany lws sepBy p $ do skipMany lws _ <- char ',' skipMany lws @@ -111,10 +110,9 @@ sp = char '\x20' ≫ return () -- |HTTP LWS: crlf? (sp | ht)+ lws ∷ Parser () {-# INLINEABLE lws #-} -lws = try $ - do option () crlf - _ ← satisfy isSPHT - skipWhile isSPHT +lws = do option () crlf + _ ← takeWhile1 isSPHT + return () -- |Returns 'True' for SP and HT. isSPHT ∷ Char → Bool