parser241-0.1.0.2: An interface to create production rules using augmented grammars

Safe HaskellSafe
LanguageHaskell2010

Parser.ProductRule.Internal

Synopsis

Documentation

data Symbol a Source

Two provided symbols besides user defined data.

Constructors

Start

represents the starting symbol.

Null

represents the null symbol.

T a

represents a terminal symbol.

NT a

represents a non-terminal symbol.

UD a

represents an undetermined symbol, used internally.

Instances

Eq a => Eq (Symbol a) Source 
Ord a => Ord (Symbol a) Source 
Show a => Show (Symbol a) Source 

type ProductRule t = (Symbol t, [Symbol t]) Source

rule :: Ord a => Symbol a -> [Symbol a] -> ProductRule a Source

non-terms -> lhs -> rhs -> product rule

setT :: Ord a => Symbol a -> Set a -> Symbol a Source

non-terms