mirror of
https://github.com/mii443/catalysa.git
synced 2025-08-22 15:05:37 +00:00
49 lines
627 B
ANTLR
49 lines
627 B
ANTLR
lexer grammar CatalysaLexer;
|
|
|
|
WS
|
|
: [ \t\r\n]
|
|
-> skip
|
|
;
|
|
|
|
ADD: '+';
|
|
SUB: '-';
|
|
MUL: '*' ;
|
|
DIV: '/' ;
|
|
CONJ: '&&' ;
|
|
OR: '||' ;
|
|
AND: '&' ;
|
|
EQ: '=' ;
|
|
EQEQ: '==' ;
|
|
NE: '!=' ;
|
|
BE: '>=' ;
|
|
LE: '<=' ;
|
|
BT: '>' ;
|
|
LT: '<' ;
|
|
SEMICOLON: ';' ;
|
|
COLON: ':' ;
|
|
COMMA: ',' ;
|
|
DOT: '.' ;
|
|
QUOTE: '"' ;
|
|
ADD_ASSIGNMENT: '+=' ;
|
|
SUB_ASSIGNMENT: '-=' ;
|
|
MUL_ASSIGNMENT: '*=' ;
|
|
DIV_ASSIGNMENT: '/=' ;
|
|
LPAREN: '(' ;
|
|
RPAREN: ')' ;
|
|
LCURL: '{' ;
|
|
RCURL: '}' ;
|
|
ARROW: '->' ;
|
|
|
|
F: 'f' ;
|
|
FOR: 'for' ;
|
|
WHILE: 'while' ;
|
|
IF: 'if' ;
|
|
ELSE: 'else' ;
|
|
LET: 'let' ;
|
|
RETURN: 'return' ;
|
|
|
|
NUM: [1-9] [0-9]* ;
|
|
|
|
TEXT: QUOTE [a-zA-Z0-9_-]* QUOTE ;
|
|
IDENT: [a-zA-Z_]+ ;
|