Tuple<'T1, 'T2, 'T3, 'T4, 'T5>.IStructuralEquatable.Equals Method (Object, IEqualityComparer)
Returns a value that indicates whether the current Tuple<'T1, 'T2, 'T3, 'T4, 'T5> object is equal to a specified object based on a specified comparison method.
Assembly: mscorlib (in mscorlib.dll)
private abstract Equals : other:Object * comparer:IEqualityComparer -> bool private override Equals : other:Object * comparer:IEqualityComparer -> bool
The object to compare with this instance.
An object that defines the method to use to evaluate whether the two objects are equal.
Return ValueType: System.Boolean
true if the current instance is equal to the specified object; otherwise, false.
The IEqualityComparer.Equals implementation is called only if other is not null, and if it can be successfully cast (in C#) or converted (in Visual Basic) to a Tuple<'T1, 'T2, 'T3, 'T4, 'T5> object whose components are of the same types as the current instance. The method first passes the Item1 values of the Tuple<'T1, 'T2, 'T3, 'T4, 'T5> objects to be compared to the IEqualityComparer.Equals implementation. If this method call returns true, the method is called again and passed the Item2 values of the two Tuple<'T1, 'T2, 'T3, 'T4, 'T5> objects. This continues until the method call returns false when it compares a specific pair of Item values, or the two Item5 values are passed to the method.
The following example defines a DoubleComparer class that implements the IEqualityComparer interface. The example instantiates two Tuple<'T1, 'T2, 'T3, 'T4, 'T5> objects by using a random number generator to populate their second through fifth components, casts the first instance to an IStructuralEquatable interface, and then uses a DoubleComparer object to test the two Tuple<'T1, 'T2, 'T3, 'T4, 'T5> objects for approximate equality.
Available since 8
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Available since 4.0
Windows Phone Silverlight
Available since 8.0
Available since 8.1