Пример #1
0
    public virtual Differences VisitContinue(Continue continue1, Continue continue2){
      Differences differences = new Differences(continue1, continue2);
      if (continue1 == null || continue2 == null){
        if (continue1 != continue2) differences.NumberOfDifferences++; else differences.NumberOfSimilarities++;
        return differences;
      }
      Continue changes = (Continue)continue2.Clone();
      Continue deletions = (Continue)continue2.Clone();
      Continue insertions = (Continue)continue2.Clone();

      differences.NumberOfSimilarities++;
      if (continue1.Level == continue2.Level) differences.NumberOfSimilarities++; else differences.NumberOfDifferences++;

      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;
    }
Пример #2
0
 public override Statement VisitContinue(Continue Continue)
 {
     if (Continue == null) return null;
     return base.VisitContinue((Continue)Continue.Clone());
 }