When implemented by a class, gets whether or not this IType contains Types that implement well-behaived Equals() method.

Namespace:  NHibernate.Type
Assembly:  NHibernate (in NHibernate.dll)

Syntax

Visual Basic (Declaration)
Public MustOverride ReadOnly Property HasNiceEquals As Boolean
C#
public abstract bool HasNiceEquals { get; }
Visual C++
public:
virtual property bool HasNiceEquals {
	bool get () abstract;
}
JavaScript
function get_hasNiceEquals();

Field Value

true if a well-behaived Equals() is implemented.

Implements

IType..::.HasNiceEquals

Remarks

Strickly, if this method returns true then x.Equals(y) implies IType.Equals(x, y) and also IType.Equals(x, y) implies that probably x.Equals(y)

In the default implementations ImmutableTypes are assumed to have HaveNiceEquals==true and MutableTypes are assumed to have HaveNiceEquals==false.

This code doesn't look like it is used anywhere internally because I did a search on ".HasNiceEquals" and found no results. So it looks like it is used for a description of the IType only.

See Also