Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data FailureInfo = FailureInfo !Int Word64 [String]
- data ResultList g s r = ResultList ![ResultInfo g s r] !FailureInfo
- newtype Parser g s r = Parser {
- applyParser :: [(s, g (ResultList g s))] -> ResultList g s r
- fromResultList :: FactorialMonoid s => s -> ResultList g s r -> ParseResults [(s, r)]
- reparseTails :: Functor g => g (Parser g s) -> [(s, g (ResultList g s))] -> [(s, g (ResultList g s))]
Documentation
data FailureInfo Source #
data ResultList g s r Source #
ResultList ![ResultInfo g s r] !FailureInfo |
Functor (ResultList g s) Source # | |
Show1 (ResultList g s) Source # | |
(Show s, Show r) => Show (ResultList g s r) Source # | |
Monoid (ResultList g s r) Source # | |
Parser for a context-free grammar with packrat-like sharing of parse results. It does not support left-recursive grammars.
Parser | |
|
GrammarParsing Parser Source # | |
MultiParsing Parser Source # | Memoizing parser guarantees O(n²) performance, but provides no left recursion support.
|
MonoidParsing (Parser g) Source # | |
Monad (Parser g i) Source # | |
Functor (Parser g i) Source # | |
Applicative (Parser g i) Source # | |
Alternative (Parser g i) Source # | |
MonadPlus (Parser g s) Source # | |
(Show s, TextualMonoid s) => TokenParsing (Parser g s) Source # | |
(Show s, TextualMonoid s) => CharParsing (Parser g s) Source # | |
MonoidNull s => LookAheadParsing (Parser g s) Source # | |
MonoidNull s => Parsing (Parser g s) Source # | |
Monoid x => Monoid (Parser g s x) Source # | |
type GrammarFunctor Parser Source # | |
type ResultFunctor Parser Source # | |
type GrammarConstraint Parser g Source # | |
fromResultList :: FactorialMonoid s => s -> ResultList g s r -> ParseResults [(s, r)] Source #
reparseTails :: Functor g => g (Parser g s) -> [(s, g (ResultList g s))] -> [(s, g (ResultList g s))] Source #