package nl.uva.polyql.validation;
import nl.uva.polyql.ast.expressions.operations.BinaryOperation;
import nl.uva.polyql.ast.values.Type;
public class InvalidBinaryOperationError extends ValidationError {
private final Type mLeft;
private final Type mRight;
private final String mOperatorSyntax;
public InvalidBinaryOperationError(final BinaryOperation operation) {
super(operation);
mLeft = operation.getLeft().getReturnType();
mRight = operation.getRight().getReturnType();
mOperatorSyntax = operation.getOperator().getSyntax();
}
@Override
public String getLabel() {
return "Operand types " + mLeft + "-" + mRight + " unsupported for operator '" + mOperatorSyntax + "'";
}
}