module Data where import Data.Map type Table = Map String String data Token = Terminal String | NonTerminal String deriving Show data Matches = Normal [Token] | ChainL String Token Token deriving Show data Action = Match Int | Fill String deriving Show data Generator = Generator {gName :: String, gBody :: [(Matches, [Action])] } deriving Show