@Override public Expression visit(IsNullPredicate predicate) { boolean original = joinRequired; joinRequired = false; super.visit(predicate); joinRequired = original; return predicate; }
@Override public Expression visit(MemberOfPredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(LikePredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(EqPredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(MemberOfPredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(EqPredicate predicate) { boolean original = joinRequired; joinRequired = false; super.visit(predicate); joinRequired = original; return predicate; }
@Override public Expression visit(MemberOfPredicate predicate) { boolean original = joinRequired; joinRequired = false; super.visit(predicate); joinRequired = original; return predicate; }
@Override public Expression visit(InPredicate predicate) { boolean original = joinRequired; joinRequired = false; super.visit(predicate); joinRequired = original; return predicate; }
@Override public Expression visit(IsEmptyPredicate predicate) { boolean original = joinRequired; joinRequired = false; super.visit(predicate); joinRequired = original; return predicate; }
@Override public Expression visit(ExistsPredicate predicate) { inExists = true; try { return super.visit(predicate); } finally { inExists = false; } }
@Override public Expression visit(GtPredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(GePredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(LePredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(LtPredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(LePredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(TypeFunctionExpression expression) { return visit((FunctionExpression) expression); }
@Override public Expression visit(EqPredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(LtPredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }
@Override public Expression visit(TypeFunctionExpression expression) { return visit((FunctionExpression) expression); }
@Override public Expression visit(LikePredicate predicate) { return visit((BinaryExpressionPredicate) predicate); }