public virtual bool VisitQueryExpressionDistinctClause(QueryExpressionDistinctClause queryExpressionDistinctClause, object d)
 {
     if ((queryExpressionDistinctClause == null)) {
         return SetFailure();
     }
     if ((d == null)) {
         return SetFailure();
     }
     if(queryExpressionDistinctClause.GetType() != d.GetType()) {return SetFailure();}
     var data = (QueryExpressionDistinctClause)d;
     if (!IsMatch(queryExpressionDistinctClause, data)) {
         return SetFailure();
     }
     return true;
 }