protected virtual bool KeyEquals(Object item, Object key)
{
Debug.Assert(key != null, "key can't be null here!");
if (Object.ReferenceEquals(_buckets, item))
{
return false;
}
if (Object.ReferenceEquals(item, key))
return true;
if (_keycomparer != null)
return _keycomparer.Equals(item, key);
return item == null ? false : item.Equals(key);
}