Encode-1.3.8: Encoding character data

CopyrightPeter Ljunglof 2002
LicenseGPL
Maintainerotakar-smrz users.sf.net
Stabilityprovisional
Portabilityportable
Safe HaskellSafe
LanguageHaskell98

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 where Source

Minimal complete definition

parse

Methods

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

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

Instances

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

class Monoid' m where Source

Minimal complete definition

zero, (<+>)

Methods

zero :: m a Source

(<+>) :: m a -> m a -> m a infixl 2 Source

anyof :: [m a] -> m a Source

class (Monad m, Functor m) => Sequence m where Source

Minimal complete definition

Nothing

Methods

(</>) :: m (a -> b) -> m a -> m b infixl 3 Source

(/>) :: m a -> m b -> m b infixl 3 Source

class Eq s => Symbol m s | m -> s where Source

Minimal complete definition

sat

Methods

sym :: s -> m s Source

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

skip :: m s Source

Instances

class Eq s => SymbolCont m s | m -> s where Source

Methods

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

Instances

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

class Lookahead m s | m -> s where Source

Methods

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

Instances

success :: Monad m => m () Source

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] infixr 4 Source

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

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