| Copyright | (c) 2017 Patrick Champion |
|---|---|
| License | see LICENSE file |
| Maintainer | chlablak@gmail.com |
| Stability | provisional |
| Portability | portable |
| Safe Haskell | None |
| Language | Haskell2010 |
PP.Builder
Contents
Description
- type LrTable = Map (Int, Rule) LrAction
- action :: LrTable -> Int -> Rule -> LrAction
- action' :: LrTable -> Int -> [OToken] -> LrAction
- data LrAction
- type LrCollection item = Vector (LrSet item)
- type LrSet item = Set item
- class Ord item => LrBuilder item where
- type NfaGraph = Gr NfaNode NfaSymbol
- data NfaNode
- data NfaSymbol
- class NfaBuilder from where
- type DfaGraph = Gr DfaNode DfaSymbol
- data DfaNode
- newtype DfaSymbol = DfaValue Char
- class DfaBuilder from where
(LA)LR
action' :: LrTable -> Int -> [OToken] -> LrAction Source #
Get a LrAction from a LrTable (OToken version)
LR actions for a LR parser
type LrCollection item = Vector (LrSet item) Source #
LR items set collection
class Ord item => LrBuilder item where Source #
LR parser common functions
Minimal complete definition
Methods
collection :: RuleSet -> FirstSet -> LrCollection item Source #
Build the items set collection
table :: LrCollection item -> Either [String] LrTable Source #
Build the parsing table
NFA
NFA node type
Constructors
| NfaInitial | |
| NfaNode | |
| NfaFinal String |
NFA symbol type
class NfaBuilder from where Source #
NFA builders
DFA
DFA node type
Constructors
| DfaInitial | |
| DfaNode | |
| DfaFinal String |
DFA symbol type
Orphan instances
| Binary item => Binary (LrCollection item) Source # | |