Safe Haskell | None |
---|---|
Language | Haskell98 |
Happy.Tabular.LALR
Documentation
genActionTable :: Grammar e -> ([Name] -> NameSet) -> [Lr1State] -> ActionTable #
genGotoTable :: Grammar e -> [ItemSetWithGotos] -> GotoTable #
genLR0items :: Grammar e -> (Name -> RuleList) -> [ItemSetWithGotos] #
precalcClosure0 :: Grammar e -> Name -> RuleList #
calcLookaheads :: Int -> [(Int, Lr0Item, NameSet)] -> Array Int [(Lr0Item, Int, Lr0Item)] -> Array Int [(Lr0Item, NameSet)] #
countConflicts :: ActionTable -> (Array Int (Int, Int), (Int, Int)) #
type ItemSetWithGotos = (Set Lr0Item, [(Name, Int)]) #
Constructors
LR'Shift Int Priority | |
LR'Reduce Int Priority | |
LR'Accept | |
LR'Fail | |
LR'MustFail | |
LR'Multiple [LRAction] LRAction |