Language.GLSL.Parser

language-glsl-0.3.0: GLSL abstract syntax tree, parser, and pretty-printer

Safe Haskell | Safe-Inferred
Language | Haskell98

Language.GLSL.Parser

# Documentation

data S #

Constructors

S |

type P a = GenParser Char S a #

keywords :: [String] #

reservedWords :: [String] #

comment :: P () #

blank :: P () #

lexeme :: P a -> P a #

parse :: [Char] -> Either ParseError TranslationUnit #

semicolon :: P () #

comma :: P () #

colon :: P () #

lbrace :: P () #

rbrace :: P () #

lbracket :: P () #

rbracket :: P () #

lparen :: P () #

rparen :: P () #

keyword :: String -> P () #

identifier :: P String #

intConstant :: P Expr #

floatingConstant :: P Expr #

operator :: String -> P String #

identifierHead :: P Char #

identifierTail :: P Char #

hexadecimal :: P Expr #

octal :: P Expr #

badOctal :: P () #

decimal :: P Expr #

floatExponent :: P Expr #

floatPoint :: P Expr #

pointFloat :: P Expr #

exponent :: P String #

infixLeft :: String -> (a -> a -> a) -> Operator Char S a #

infixLeft' :: String -> (a -> a -> a) -> Operator Char S a #

infixLeft'' :: Char -> (a -> a -> a) -> Operator Char S a #

infixRight :: String -> (a -> a -> a) -> Operator Char S a #

conditionalTable :: [[Operator Char S Expr]] #

assignmentTable :: [[Operator Char S Expr]] #

expressionTable :: [[Operator Char S Expr]] #

primaryExpression :: P Expr #

postfixExpression :: P Expr #

dotFunctionCallGeneric :: P (Expr -> Expr) #

dotFieldSelection :: P (Expr -> Expr) #

integerExpression :: P Expr #

functionCallGeneric :: P (FunctionIdentifier, Parameters) #

functionCallHeader :: P FunctionIdentifier #

functionIdentifier :: P FunctionIdentifier #

unaryExpression :: P Expr #

conditionalExpression :: P Expr #

assignmentExpression :: P Expr #

expression :: P Expr #

constantExpression :: P Expr #

declaration :: P Declaration #

functionPrototype :: P FunctionPrototype #

functionDeclarator :: P (FullType, String, [ParameterDeclaration]) #

functionHeader :: P (FullType, String) #

parameterDeclaration :: P ParameterDeclaration #

parameterQualifier :: P ParameterQualifier #

fullySpecifiedType :: P FullType #

invariantQualifier :: P InvariantQualifier #

interpolationQualifier :: P InterpolationQualifier #

layoutQualifier :: P LayoutQualifier #

layoutQualifierId :: P LayoutQualifierId #

parameterTypeQualifier :: P ParameterTypeQualifier #

typeQualifier :: P TypeQualifier #

storageQualifier :: P StorageQualifier #

typeSpecifier :: P TypeSpecifier #

typeSpecifierNoPrecision :: P TypeSpecifierNoPrecision #

typeSpecifierNonArray :: P TypeSpecifierNonArray #

precisionQualifier :: P PrecisionQualifier #

structSpecifier :: P TypeSpecifierNonArray #

structDeclarationList :: P [Field] #

structDeclaration :: P Field #

structDeclaratorList :: P [StructDeclarator] #

structDeclarator :: P StructDeclarator #

initializer :: P Expr #

declarationStatement :: P Declaration #

statement :: P Statement #

simpleStatement :: P Statement #

compoundStatement :: P Compound #

statementNoNewScope :: P Statement #

compoundStatementNoNewScope :: P Compound #

statementList :: P [Statement] #

expressionStatement :: P (Maybe Expr) #

selectionStatement :: P Statement #

condition :: P Condition #

switchStatement :: P Statement #

switchStatementList :: P [Statement] #

caseLabel :: P CaseLabel #

iterationStatement :: P Statement #

forInitStatement :: P (Either (Maybe Expr) Declaration) #

jumpStatement :: P Statement #

translationUnit :: P TranslationUnit #

externalDeclaration :: P ExternalDeclaration #

functionDefinition :: P ExternalDeclaration #