Module glsl::syntax [] [src]

Structs

CompoundStatement

Compound statement (with no new scope).

FieldSelection

Field selection.

ForRestStatement

For init statement

FullySpecifiedType

Fully specified type.

FunctionDefinition

Function definition.

FunctionParameterDeclarator

Function parameter declarator.

FunctionPrototype

Function prototype.

LayoutQualifier

Layout qualifier.

SingleDeclaration

Single declaration.

StructFieldSpecifier

Struct field specifier. Used to add fields to struct specifiers.

StructSpecifier

Struct specifier. Used to create new, user-defined types.

SwitchStatement

Switch statement.

TypeQualifier

Type qualifier.

Enums

ArraySpecifier

Dimensionality of an arary.

AssignmentOp

All possible operators for assigning expressions.

BinaryOp

All binary operators that exist in GLSL.

CaseLabel

Case label statement.

Condition

Condition.

Declaration

A declaration.

Expr

The most general form of an expression. As you can see if you read the variant list, in GLSL, an assignment is an expression. This is a bit silly but think of an assignment as a statement first then an expression which evaluates to what the statement “returns”.

ExternalDeclaration

External declaration.

ForInitStatement

For init statement

FunIdentifier

Function identifier. Constructors are recognized via type specifiers and methods (.length), subroutine array calls and identifiers are recognized via postfix expressions.

FunctionParameterDeclaration

Function parameter declaration.

InitDeclaratorList

Init declarator list.

Initializer

Initializer.

InterpolationQualifier

Interpolation qualifier.

IterationStatement

Iteration statement.

JumpStatement

Jump statement.

LayoutQualifierSpec

Layout qualifier spec.

PrecisionQualifier

Precision qualifier.

SelectionRestStatement

Selection rest statement.

SelectionStatement

Selection statement.

SimpleStatement

Simple statement.

Statement

Statement.

StorageQualifier

Storage qualifier.

TranslationUnit

Starting rule.

TypeQualifierSpec

Type qualifier spec.

TypeSpecifier

Type specifier.

UnaryOp

All unary operators that exist in GLSL.

Type Definitions

ExprStatement

Expression statement.

Identifier

A generic identifier.

NonEmpty
TypeName

Any type name.