@Override protected Type visitArithmeticBinary(ArithmeticBinaryExpression node, AnalysisContext context) { return getOperator( context, node, OperatorType.valueOf(node.getType().name()), node.getLeft(), node.getRight()); }
@Override protected Type visitComparisonExpression(ComparisonExpression node, AnalysisContext context) { OperatorType operatorType; if (node.getType() == ComparisonExpression.Type.IS_DISTINCT_FROM) { operatorType = OperatorType.EQUAL; } else { operatorType = OperatorType.valueOf(node.getType().name()); } return getOperator(context, node, operatorType, node.getLeft(), node.getRight()); }