All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javacc.parser.ast.expr.BinaryExpr Maven / Gradle / Ivy

/*
 * Created on 05/10/2006
 */
package javacc.parser.ast.expr;

import javacc.parser.ast.visitor.GenericVisitor;
import javacc.parser.ast.visitor.VoidVisitor;

/**
 * @author Julio Vilmar Gesser
 */
public final class BinaryExpr extends Expression {

    public static enum Operator {
        or, // ||
        and, // &&
        binOr, // |
        binAnd, // &
        xor, // ^
        equals, // ==
        notEquals, // !=
        less, // <
        greater, // >
        lessEquals, // <=
        greaterEquals, // >=
        lShift, // <<
        rSignedShift, // >>
        rUnsignedShift, // >>>
        plus, // +
        minus, // -
        times, // *
        divide, // /
        remainder, // %
    }

    public final Expression left;

    public final Expression right;

    public final Operator op;

    public BinaryExpr(Expression left, Expression right, Operator op) {
        this.left = left;
        this.right = right;
        this.op = op;
    }

    @Override
    public  void accept(VoidVisitor v, A arg) {
        v.visit(this, arg);
    }

    @Override
    public  R accept(GenericVisitor v, A arg) {
        return v.visit(this, arg);
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy