mirror of
https://github.com/JonathanFleischmann/CompilerULTIMATE.git
synced 2024-10-06 18:01:40 +00:00
Update grammar
This commit is contained in:
parent
87766d28c0
commit
a1cc591220
@ -39,15 +39,13 @@ expr : expr binaryOp expr #BinaryOperation
|
||||
| stmtexpr #StatementExpressionexpr
|
||||
;
|
||||
|
||||
binaryOp : ADD | SUB | MUL;
|
||||
binaryOp : ADD | SUB | MUL | GT | LT | GE | LE | EQ | NE | AND | OR | NOT;
|
||||
|
||||
|
||||
methCall : id '(' args? ')';
|
||||
args : expr (',' expr)*;
|
||||
|
||||
literal : NUMBER | boolean | CHAR;
|
||||
|
||||
boolean : 'true' | 'false' ;
|
||||
literal : NUMBER | BOOLEANLITERAL | CHARLITERAL;
|
||||
|
||||
id : IDENTIFIER;
|
||||
|
||||
@ -58,14 +56,23 @@ NEW : 'new';
|
||||
SUB : '-';
|
||||
ADD : '+';
|
||||
MUL : '*';
|
||||
GT : '>';
|
||||
LT : '<';
|
||||
GE : '>=';
|
||||
LE : '<=';
|
||||
EQ : '==';
|
||||
NE : '!=';
|
||||
AND : '&&';
|
||||
OR : '||';
|
||||
NOT : '!';
|
||||
|
||||
INT : 'int';
|
||||
BOOL : 'boolean';
|
||||
VOID : 'void';
|
||||
CHAR : 'char';
|
||||
|
||||
CHAR: ['][a-zA-Z]['];
|
||||
BOOLEANLITERAL : 'true' | 'false' ;
|
||||
CHARLITERAL : ['][a-zA-Z]['];
|
||||
IDENTIFIER : [a-zA-Z]+;
|
||||
NUMBER : [0-9]+;
|
||||
WS : [ \t\r\n] -> skip;
|
||||
|
||||
|
||||
|
@ -3,5 +3,14 @@ package de.maishai.ast;
|
||||
public enum Operator {
|
||||
ADD,
|
||||
SUB,
|
||||
MUL
|
||||
MUL,
|
||||
GT,
|
||||
LT,
|
||||
GE,
|
||||
LE,
|
||||
EQ,
|
||||
NE,
|
||||
AND,
|
||||
OR,
|
||||
NOT
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user