-- | Bnf tokens module Data.Cfg.Bnf.Token( Token(..), TokenType(..) ) where -- | Token types data TokenType = ERROR | FULL_STOP -- ^ @.@ | LOWER_IDENTIFIER -- ^ an identifier made of lower-case characters possibly -- separated by underscores | OR -- ^ @|@ | UPPER_IDENTIFIER -- ^ an identifier made of upper-case characters possibly -- separated by underscores | YIELDS -- ^ @::=@ deriving (Eq, Show) -- | Basic Bnf tokens. They do not contain location information. data Token = Token TokenType String deriving (Eq, Show)