package nl.uva.sc.encoders.ql.visitor;
import nl.uva.sc.encoders.ql.ast.operator.AddOperator;
import nl.uva.sc.encoders.ql.ast.operator.AndOperator;
import nl.uva.sc.encoders.ql.ast.operator.DivideOperator;
import nl.uva.sc.encoders.ql.ast.operator.EqualsOperator;
import nl.uva.sc.encoders.ql.ast.operator.GreaterOrEqualOperator;
import nl.uva.sc.encoders.ql.ast.operator.GreaterThanOperator;
import nl.uva.sc.encoders.ql.ast.operator.LessOrEqualOperator;
import nl.uva.sc.encoders.ql.ast.operator.LessThanOperator;
import nl.uva.sc.encoders.ql.ast.operator.MultiplyOperator;
import nl.uva.sc.encoders.ql.ast.operator.NotEqualsOperator;
import nl.uva.sc.encoders.ql.ast.operator.OrOperator;
import nl.uva.sc.encoders.ql.ast.operator.SubstractOperator;
public interface BinaryOperatorVisitor<T> {
T visit(AddOperator operator);
T visit(AndOperator operator);
T visit(DivideOperator operator);
T visit(GreaterOrEqualOperator operator);
T visit(GreaterThanOperator operator);
T visit(LessOrEqualOperator operator);
T visit(MultiplyOperator operator);
T visit(OrOperator operator);
T visit(SubstractOperator operator);
T visit(LessThanOperator lessThanOperator);
T visit(EqualsOperator equalsOperator);
T visit(NotEqualsOperator notEqualsOperator);
}