A is A NuGet Package

Implementations of IEqualityComparer and IEqualityComparer<T> which ignore all overridden definitions of equality and compare based on identity alone.
This deliberate usurpation of defined concepts of equality is normally counter-productive.

It is however useful in the following cases:
1. A hash-based structure such as a Dictionary<TKey, TValue> is used to associate objects with another which may be equivalent to another using the same dictionary.
2. A hash-based structure such as a Dictionary<TKey, TValue> is used to associate objects with another which may mutate in such a way as to change the hash code based on its defined concept of equality.
3. As a (risky) optimisation, when it is known that no other equivalent objects exist, and therefore this object is the only one that would return true for an equality check.

E.g. this would be the case with strings that had all been interned with string.Intern().




Got any A is A Question?





Info

Version: 1.1.5114
Author(s): Jon Hanna
Last Update: Tuesday, December 31, 2013
.NET Fiddle: Create the first Fiddle
Project Url: https://bitbucket.org/JonHanna/aisa
NuGet Url: https://www.nuget.org/packages/AisA


Install
Install-Package AisA
dotnet add package AisA
paket add AisA
AisA Download (Unzip the "nupkg" after downloading)





STATS

must-have-score

avg-downloads-per-day

0

days-since-last-release

4195