epic

Safe HaskellSafe-Infered

Epic.Lexer

Documentation

type P a = String -> String -> LineNumber -> Result a

thenP :: P a -> (a -> P b) -> P b

returnP :: a -> P a

failP :: String -> P a

catchP :: P a -> (String -> P a) -> P a

lexer :: (Token -> P a) -> P a

lexNum :: (Token -> [Char] -> t) -> String -> t

lexString :: (Token -> String -> [Char] -> Int -> Result a) -> String -> [Char] -> Int -> Result a

lexChar :: (Token -> String -> [Char] -> LineNumber -> Result a) -> String -> [Char] -> LineNumber -> Result a

lexVar :: (Token -> [Char] -> t) -> [Char] -> t

lexSpecial :: (Token -> [Char] -> t) -> [Char] -> t

getstr' :: Num t => [Char] -> [Char] -> t -> Maybe ([Char], [Char], t)