@@ -76,6 +76,9 @@ p <?> msg =
76 (Left _) -> Left (st, [msg])
76 (Left _) -> Left (st, [msg])
80+-- * Things like in @Parsec.Char@
79-- |character parser
82-- |character parser
80satisfy :: (Char -> Bool) -> Parser C.ByteString Char
83satisfy :: (Char -> Bool) -> Parser C.ByteString Char
81satisfy f =
84satisfy f =
@@ -91,6 +94,9 @@ satisfy f =
91pChar :: Char -> Parser C.ByteString Char
94pChar :: Char -> Parser C.ByteString Char
92pChar c = satisfy (== c) <?> [c]
95pChar c = satisfy (== c) <?> [c]
98+-- * Things vaguely like those in @Parsec.Combinator@ (and @Parsec.Prim@)
94-- |detect 'end of file'
100-- |detect 'end of file'
95pEOF :: Parser C.ByteString ()
101pEOF :: Parser C.ByteString ()
@@ -142,6 +148,9 @@ notEmpty (Parser p) =
145-- |'parse' - run a parser
154-- |'parse' - run a parser
146parse :: Parser state a -> state -> Either (ParserError state) (a, state)
155parse :: Parser state a -> state -> Either (ParserError state) (a, state)
147parse p s =
156parse p s =