]> gitweb @ CieloNegro.org - Lucu.git/blobdiff - Network/HTTP/Lucu/Parser.hs
Documentation
[Lucu.git] / Network / HTTP / Lucu / Parser.hs
index ffbf6d13ff67f2c834529a850dc684bebe74af1a..c43dfa7616d758bd2d5776c803cc435a56f0fd22 100644 (file)
@@ -20,6 +20,7 @@ module Network.HTTP.Lucu.Parser
     , many1     -- Parser a -> Parser [a]
     , manyTill  -- Parser a -> Parser end -> Parser [a]
     , many1Till -- Parser a -> Parser end -> Parser [a]
+    , count     -- Int -> Parser a -> Parser [a]
     , option    -- a -> Parser a -> Parser a
     , sepBy     -- Parser a -> Parser sep -> Parser [a]
     , sepBy1    -- Parser a -> Parser sep -> Parser [a]
@@ -190,6 +191,13 @@ many1Till p end = many1 $ do x <- p
                              return x
 
 
+count :: Int -> Parser a -> Parser [a]
+count 0 _ = return []
+count n p = do x  <- p
+               xs <- count (n-1) p
+               return (x:xs)
+
+
 option :: a -> Parser a -> Parser a
 option def p = p <|> return def