uuagc

SequentialTypes

# Documentation

type Vertex = Int

data PathStep

Constructors

AttrStep Vertex Vertex |
AtOcStep Vertex Vertex |
AttrIndu Vertex Vertex |

Instances

Eq PathStep |
Show PathStep |

type Path = [PathStep]

type Route = [Vertex]

type Edge = (Int, Int)

type EdgePath = (Edge, Path)

type EdgePaths = (Edge, Path, Path)

type EdgeRoute = (Edge, Route)

type EdgeRoutes = (Edge, Route, Route)

type Table a = Array Vertex a

data ChildVisit

Constructors

ChildVisit Identifier Identifier Int [Vertex] [Vertex] |

Instances

Eq ChildVisit |
Show ChildVisit |

data NTAttr

Constructors

NTAInh NontermIdent Identifier Type |
NTASyn NontermIdent Identifier Type |

Instances

Eq NTAttr |
Ord NTAttr |
Show NTAttr |

ntattr :: CRule -> Maybe NTAttr

cRuleLhsInh :: Identifier -> NontermIdent -> ConstructorIdent -> Type -> CRule

cRuleTerminal :: Identifier -> NontermIdent -> ConstructorIdent -> Type -> CRule

cRuleRhsSyn :: Identifier -> NontermIdent -> ConstructorIdent -> Type -> Identifier -> NontermIdent -> CRule

defaultRule :: Identifier -> NontermIdent -> ConstructorIdent -> Identifier -> CRule

eqCRuleDefines :: CRule -> CRule -> Bool

(>/<) :: Ordering -> Ordering -> Ordering

eqClasses :: (a -> a -> Bool) -> [a] -> [[a]]

rhsshow :: Identifier -> NTAttr -> String

prettyCRule :: CRule -> String