private Set<RelationalPath<?>> visitJoins(Iterable<JoinExpression> joins, Set<RelationalPath<?>> known) {
        for (JoinExpression j : joins) {
            known = j.getTarget().accept(this, known);
            if (j.getCondition() != null) {
                known = j.getCondition().accept(this, known);
            }
        }
        return known;
    }
{@code RelationalPathExtractor} extracts {@link RelationalPath} instances from expressions and queries

@author tiwe
querydsl-sql/src/main/java/com/querydsl/sql/RelationalPathExtractor.java