public virtual Differences VisitQueryProject(QueryProject project1, QueryProject project2){
      Differences differences = new Differences(project1, project2);
      if (project1 == null || project2 == null){
        if (project1 != project2) differences.NumberOfDifferences++; else differences.NumberOfSimilarities++;
        return differences;
      }
      QueryProject changes = (QueryProject)project2.Clone();
      QueryProject deletions = (QueryProject)project2.Clone();
      QueryProject insertions = (QueryProject)project2.Clone();

      //      project1.Context;
      //      project1.Members;
      //      project1.ProjectedType;
      //      project1.ProjectionList;

      if (differences.NumberOfDifferences == 0){
        differences.Changes = null;
        differences.Deletions = null;
        differences.Insertions = null;
      }else{
        differences.Changes = changes;
        differences.Deletions = deletions;
        differences.Insertions = insertions;
      }
      return differences;
    }
Example #2
0
 public override Node VisitQueryProject(QueryProject project){
   if (project == null) return null;
   return base.VisitQueryProject((QueryProject)project.Clone());
 }