This module defines our parsing monad. In the past there have been lazy and strict parsers in this module. Currently we have only the strict variant and it is used for parsing patch files.
- class Monad m => ParserM m where
- alterInput :: ParserM m => (ByteString -> ByteString) -> m ()
- parseStrictly :: SM a -> ByteString -> Maybe (a, ByteString)
- lexChar :: ParserM m => Char -> m ()
- lexString :: ParserM m => String -> m ()
- lexStrings :: ParserM m => [String] -> m String
- lexEof :: ParserM m => m ()
- myLex :: ByteString -> Maybe (ByteString, ByteString)
Applies a parsing function inside the
Allows for the inspection of the input that is yet to be parsed.
Applies a function to the input stream and discards the result of the function.