Encode-1.3.2: Encoding character data

Portabilityportable
Stabilityprovisional
Maintainerotakar.smrz mff.cuni.cz

PureFP.Parsers.Parser

Description

Chapters 3 and 4 of Pure Functional Parsing – an advanced tutorial by Peter Ljunglöf

http://www.ling.gu.se/~peb/pubs/p02-lic-thesis.pdf

http://www.ling.gu.se/~peb/software/functional-parsing/

Documentation

class Parser m s | m -> s whereSource

Methods

parse :: m a -> [s] -> [([s], a)]Source

parseFull :: m a -> [s] -> [a]Source

Instances

Parser (Standard s) s 
Parser (Stream s) s 
Ord s => Parser (Trie s) s 
Ord s => Parser (AmbTrie s) s 
Ord s => Parser (ExTrie s) s 
Ord s => Parser (AmbExTrie s) s 
Ord s => Parser (ParserTrie s) s 
Ord s => Parser (Mapper s) s 
(Ord s, Parser m s) => Parser (PairTrie m s) s 
ExtEnv e => Parser (Extend e s) s 
ExtEnv e => Parser (Extend e s) s 

class Monoid m whereSource

Methods

zero :: m aSource

(<+>) :: m a -> m a -> m aSource

anyof :: [m a] -> m aSource

Instances

Monoid (Standard s) 
Monoid (Stream s) 
Ord s => Monoid (Trie s) 
Ord s => Monoid (AmbTrie s) 
Ord s => Monoid (ExTrie s) 
Ord s => Monoid (AmbExTrie s) 
Ord s => Monoid (ParserTrie s) 
Ord s => Monoid (Mapper s) 
(Ord s, Monoid m, Lookahead m s) => Monoid (PairTrie m s) 
Monoid (Extend e s) 
Monoid (Extend e s) 

class (Monad m, Functor m) => Sequence m whereSource

Methods

(<*>) :: m (a -> b) -> m a -> m bSource

(*>) :: m a -> m b -> m bSource

Instances

Sequence (Standard s) 
Sequence (Stream s) 
Ord s => Sequence (Trie s) 
Ord s => Sequence (AmbTrie s) 
Ord s => Sequence (ExTrie s) 
Ord s => Sequence (AmbExTrie s) 
Ord s => Sequence (Mapper s) 
(Ord s, Monoid m, Sequence m, Lookahead m s) => Sequence (PairTrie m s) 
Sequence (Extend e s) 
Sequence (Extend e s) 

class Eq s => Symbol m s | m -> s whereSource

Methods

sym :: s -> m sSource

sat :: (s -> Bool) -> m sSource

skip :: m sSource

Instances

Eq s => Symbol (Standard s) s 
Eq s => Symbol (Stream s) s 
InputSymbol s => Symbol (Trie s) s 
InputSymbol s => Symbol (AmbTrie s) s 
InputSymbol s => Symbol (ExTrie s) s 
InputSymbol s => Symbol (AmbExTrie s) s 
InputSymbol s => Symbol (Mapper s) s 
(InputSymbol s, Monoid m, Symbol m s, Lookahead m s) => Symbol (PairTrie m s) s 
Eq s => Symbol (Extend e s) s 
Eq s => Symbol (Extend e s) s 

class Ord s => InputSymbol s whereSource

class Eq s => SymbolCont m s | m -> s whereSource

Methods

satCont :: (s -> Bool) -> (s -> m a) -> m aSource

Instances

Eq s => SymbolCont (Standard s) s 
Eq s => SymbolCont (Stream s) s 
Eq s => SymbolCont (Extend e s) s 

class Lookahead m s | m -> s whereSource

Methods

lookahead :: ([s] -> m a) -> m aSource

Instances

many0 :: (Monoid m, Sequence m) => m a -> m ()Source

syms0 :: (Sequence m, Symbol m s) => [s] -> m ()Source

(<:>) :: Sequence m => m a -> m [a] -> m [a]Source

many :: (Monoid m, Sequence m) => m a -> m [a]Source

syms :: (Sequence m, Symbol m s) => [s] -> m [s]Source