forked from JavaTX/JavaCompilerCore
42 lines
1.0 KiB
Java
42 lines
1.0 KiB
Java
package de.dhbwstuttgart.syntaxtree.statement;
|
|
|
|
import de.dhbwstuttgart.syntaxtree.StatementVisitor;
|
|
import de.dhbwstuttgart.syntaxtree.type.RefTypeOrTPHOrWildcardOrGeneric;
|
|
import org.antlr.v4.runtime.Token;
|
|
|
|
public class BinaryExpr extends Expression {
|
|
@Override
|
|
public void accept(StatementVisitor visitor) {
|
|
visitor.visit(this);
|
|
}
|
|
|
|
public enum Operator {
|
|
ADD, // +
|
|
SUB, // -
|
|
MUL, // *
|
|
MOD, // Modulo Operator %
|
|
AND, // &
|
|
OR, // |
|
|
DIV, // /
|
|
LESSTHAN, // <
|
|
BIGGERTHAN, // >
|
|
LESSEQUAL, // <=
|
|
BIGGEREQUAL, // >=
|
|
EQUAL, // ==
|
|
NOTEQUAL // !=
|
|
}
|
|
|
|
public final Operator operation;
|
|
public final Expression lexpr;
|
|
public final Expression rexpr;
|
|
|
|
public BinaryExpr(Operator operation, RefTypeOrTPHOrWildcardOrGeneric type, Expression lexpr, Expression rexpr, Token offset) {
|
|
super(type, offset);
|
|
|
|
this.operation = operation;
|
|
this.lexpr = lexpr;
|
|
this.rexpr = rexpr;
|
|
}
|
|
|
|
}
|