1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- FLOAT_LITERAL = [0-9]*\.[0-9]+([eE][+-]?[0-9]+)?|[0-9]+\.[0-9]*([eE][+-]?[0-9]+)?|[0-9]+([eE][+-]?[0-9]+)
- INT_LITERAL = [0-9]+|0x[0-9a-fA-F]+
- TRUE_LITERAL = "true"
- FALSE_LITERAL = "false"
- IF = "if"
- STATIC_IF = "@if"
- ELSE = "else"
- FOR = "for"
- WHILE = "while"
- DO = "do"
- SWITCH = "switch"
- STATIC_SWITCH = "@switch"
- CASE = "case"
- DEFAULT = "default"
- BREAK = "break"
- CONTINUE = "continue"
- DISCARD = "discard"
- RETURN = "return"
- NULL_LITERAL = "null"
- IN = "in"
- OUT = "out"
- INOUT = "inout"
- UNIFORM = "uniform"
- CONST = "const"
- FLAT = "flat"
- NOPERSPECTIVE = "noperspective"
- READONLY = "readonly"
- WRITEONLY = "writeonly"
- COHERENT = "coherent"
- VOLATILE = "volatile"
- RESTRICT = "restrict"
- BUFFER = "buffer"
- HASSIDEEFFECTS = "sk_has_side_effects"
- PLS = "__pixel_localEXT"
- PLSIN = "__pixel_local_inEXT"
- PLSOUT = "__pixel_local_outEXT"
- STRUCT = "struct"
- LAYOUT = "layout"
- PRECISION = "precision"
- ENUM = "enum"
- CLASS = "class"
- IDENTIFIER = [a-zA-Z_$]([0-9]|[a-zA-Z_$])*
- DIRECTIVE = #[a-zA-Z_$]([0-9]|[a-zA-Z_$])*
- SECTION = @[a-zA-Z_$]([0-9]|[a-zA-Z_$])*
- LPAREN = "("
- RPAREN = ")"
- LBRACE = "{"
- RBRACE = "}"
- LBRACKET = "["
- RBRACKET = "]"
- DOT = "."
- COMMA = ","
- PLUSPLUS = "++"
- MINUSMINUS = "--"
- PLUS = "+"
- MINUS = "-"
- STAR = "*"
- SLASH = "/"
- PERCENT = "%"
- SHL = "<<"
- SHR = ">>"
- BITWISEOR = "|"
- BITWISEXOR = "^"
- BITWISEAND = "&"
- BITWISENOT = "~"
- LOGICALOR = "||"
- LOGICALXOR = "^^"
- LOGICALAND = "&&"
- LOGICALNOT = "!"
- QUESTION = "?"
- COLONCOLON = "::"
- COLON = ":"
- EQ = "="
- EQEQ = "=="
- NEQ = "!="
- GT = ">"
- LT = "<"
- GTEQ = ">="
- LTEQ = "<="
- PLUSEQ = "+="
- MINUSEQ = "-="
- STAREQ = "*="
- SLASHEQ = "/="
- PERCENTEQ = "%="
- SHLEQ = "<<="
- SHREQ = ">>="
- BITWISEOREQ = "|="
- BITWISEXOREQ = "^="
- BITWISEANDEQ = "&="
- LOGICALOREQ = "||="
- LOGICALXOREQ = "^^="
- LOGICALANDEQ = "&&="
- SEMICOLON = ";"
- ARROW = "->"
- WHITESPACE = \s+
- LINE_COMMENT = //.*
- BLOCK_COMMENT = /\*([^*]|\*[^/])*\*/
- INVALID = .
|