package nl.uva.sc.encoders.ql.visitor;
import nl.uva.sc.encoders.ql.ast.expression.BinaryExpression;
import nl.uva.sc.encoders.ql.ast.expression.BracedExpression;
import nl.uva.sc.encoders.ql.ast.expression.LiteralExpression;
import nl.uva.sc.encoders.ql.ast.expression.NameExpression;
import nl.uva.sc.encoders.ql.ast.expression.UnaryExpression;
public interface ExpressionVisitor<T> {
T visit(UnaryExpression unaryExpression);
T visit(BinaryExpression binaryExpression);
T visit(BracedExpression bracedExpression);
T visit(NameExpression nameExpression);
T visit(LiteralExpression literalExpression);
}