code: public Query constrainedBy( Constraint constraint ) {
          return new Query(source, constraint, orderings(), columns, getLimits(), distinct);
      }
docs: Create a copy of this query, but one that uses the supplied constraint.
  
  @param constraint the constraint that should be used; never null
  @return the copy of the query that uses the supplied constraint; never null