public virtual Differences VisitQuerySingleton(QuerySingleton singleton1, QuerySingleton singleton2){ Differences differences = new Differences(singleton1, singleton2); if (singleton1 == null || singleton2 == null){ if (singleton1 != singleton2) differences.NumberOfDifferences++; else differences.NumberOfSimilarities++; return differences; } QuerySingleton changes = (QuerySingleton)singleton2.Clone(); QuerySingleton deletions = (QuerySingleton)singleton2.Clone(); QuerySingleton insertions = (QuerySingleton)singleton2.Clone(); //singleton1.Source; 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; }
public override Node VisitQuerySingleton(QuerySingleton singleton){ if (singleton == null) return null; return base.VisitQuerySingleton((QuerySingleton)singleton.Clone()); }