public bool Equals(IReflectionElement x, IReflectionElement y) { var values = new CompositeReflectionElement(x, y) .Accept(this.visitor) .Value .Cast <object>() .ToArray(); return(values.Length == 2 && values.Distinct().Count() == 1); }
bool IEqualityComparer <IReflectionElement> .Equals(IReflectionElement x, IReflectionElement y) { var values = new CompositeReflectionElement(x, y) .Accept(this.visitor) .Value .ToArray(); var distinctValues = values.Distinct(this.comparer); return(values.Length == 2 && distinctValues.Count() == 1); }
bool IEqualityComparer <IReflectionElement> .Equals(IReflectionElement x, IReflectionElement y) { T[] values = new CompositeReflectionElement(x, y) .Accept(_visitor) .Value .ToArray(); IEnumerable <T> distinctValues = values.Distinct(_comparer); return(values.Length == 2 && distinctValues.Count() == 1); }