lambdacube-compiler-0.6.0.1: LambdaCube 3D is a DSL to program GPUs

Safe HaskellNone
LanguageHaskell2010

LambdaCube.Compiler.Lexer

Documentation

try_ :: MonadParsec e s m => String -> m a -> m a Source #

parseLit :: forall r w. Parse r w Lit Source #

type Parse r w = RWST (ParseEnv r) [w] SPos (Parsec Dec String) Source #

runParse :: Parse r w a -> ParseState r -> Either ParseError (a, [w]) Source #

identation :: (MonadParsec e s m, MonadReader (ParseEnv r) m) => Bool -> m t -> m [t] Source #

appRange :: Parse r w (SI -> a) -> Parse r w a Source #

noSpaceBefore :: (SourceInfo a, MonadState SPos m, MonadParsec e s m) => m a -> m a Source #

lexeme_ :: ((~#) * * (Token s) Char, MonadParsec e s f, MonadReader (ParseEnv r) f, MonadState SPos f) => f t -> f (SI, t) Source #

lexeme :: Parse r w a -> Parse r w a Source #

symbol :: ((~#) * * (Token s) Char, MonadReader (ParseEnv r) f, MonadState SPos f, MonadParsec e s f) => String -> f (SI, String) Source #

simpleSpace :: ((~#) * * (Token s) Char, MonadParsec e s m) => m () Source #

whiteSpace :: ((~#) * * (Token s) Char, MonadParsec e s m) => m () Source #

parens :: ((~#) * * (Token s) Char, MonadReader (ParseEnv r) m, MonadState SPos m, MonadParsec e s m) => m a -> m a Source #

braces :: ((~#) * * (Token s) Char, MonadReader (ParseEnv r) m, MonadState SPos m, MonadParsec e s m) => m a -> m a Source #

brackets :: ((~#) * * (Token s) Char, MonadReader (ParseEnv r) m, MonadState SPos m, MonadParsec e s m) => m a -> m a Source #

commaSep :: ((~#) * * (Token s) Char, MonadParsec e s m, MonadState SPos m, MonadReader (ParseEnv r) m) => m a -> m [a] Source #

commaSep1 :: ((~#) * * (Token s) Char, MonadParsec e s m, MonadState SPos m, MonadReader (ParseEnv r) m) => m a -> m [a] Source #

data Namespace Source #

Constructors

TypeNS 
ExpNS 

Instances

modifyLevel :: MonadReader (ParseEnv r) m => (Namespace -> Namespace) -> m a -> m a Source #

typeNS :: Parse r w a -> Parse r w a Source #

expNS :: Parse r w a -> Parse r w a Source #

lowerLetter :: ((~#) * * (Token s) Char, MonadParsec e s m) => m Char Source #

upperLetter :: ((~#) * * (Token s) Char, MonadParsec e s m) => m Char Source #

identStart :: ((~#) * * (Token s) Char, MonadParsec e s m) => m Char Source #

identLetter :: ((~#) * * (Token s) Char, MonadParsec e s m) => m Char Source #

lowercaseOpLetter :: ((~#) * * (Token s) Char, MonadParsec e s m) => m Char Source #

opLetter :: ((~#) * * (Token s) Char, MonadParsec e s f) => f Char Source #

maybeStartWith :: ((~#) * * (Token s) Char, MonadParsec e s f) => (Char -> Bool) -> f [Char] -> f [Char] Source #

reserved :: ((~#) * * (Token s) Char, MonadReader (ParseEnv r) f, MonadState SPos f, MonadParsec e s f) => String -> f SI Source #

expect :: String -> (String -> Bool) -> Parse r w String -> Parse r w String Source #

calcPrec :: MonadError (f, f) m => (f -> e -> e -> e) -> (f -> Fixity) -> e -> [(f, e)] -> m e Source #