uu-parsinglib-2.9.1.1: Fast, online, error-correcting, monadic, applicative, merging, permuting, interleaving, idiomatic parser combinators.

Safe HaskellSafe
LanguageHaskell98

Text.ParserCombinators.UU.Interleaved

Contents

Description

This module contains the additional data types, instance definitions and functions to run parsers in an interleaved way. If all the interleaved parsers recognise a single connected piece of the input text this incorporates the permutation parsers. For some examples see the module Text.ParserCombinators.UU.Demo.MergeAndPermute.

Synopsis

Documentation

mkP :: Gram (P st) a -> P st a #

doNotInterpret :: P st a -> P st a #

doNotInterpret forgets the computed minimal number of tokens recognised by this parser which makes a parser opaque for abstract interpretation; used when interleaving parsers where we do not want to compare lengths.

Orphan instances

Splittable (P st) # 

Methods

getNonPure :: P st a -> Maybe (P st a) #

getPure :: P st a -> Maybe a #

Functor f => ExtAlternative (Gram f) # 

Methods

(<<|>) :: Gram f a -> Gram f a -> Gram f a #

(<?>) :: Gram f a -> String -> Gram f a #

must_be_non_empty :: String -> Gram f a -> c -> c #

must_be_non_empties :: String -> Gram f a -> Gram f b -> c -> c #

opt :: Gram f a -> a -> Gram f a #

IsParser (Gram (P st)) #