From 7a43cab45a8e8ad3ba638741278b621c19de7ff9 Mon Sep 17 00:00:00 2001 From: Joe4evr Date: Thu, 11 Jan 2018 03:23:49 +0100 Subject: [PATCH] Remove specialized implementation, as per feedback --- src/Discord.Net.Core/Utils/Comparers.cs | 26 +------------------------ 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/src/Discord.Net.Core/Utils/Comparers.cs b/src/Discord.Net.Core/Utils/Comparers.cs index 93891c2f2..d7641e897 100644 --- a/src/Discord.Net.Core/Utils/Comparers.cs +++ b/src/Discord.Net.Core/Utils/Comparers.cs @@ -10,7 +10,7 @@ namespace Discord public static IEqualityComparer GuildComparer => _guildComparer ?? (_guildComparer = new EntityEqualityComparer()); public static IEqualityComparer ChannelComparer => _channelComparer ?? (_channelComparer = new EntityEqualityComparer()); public static IEqualityComparer RoleComparer => _roleComparer ?? (_roleComparer = new EntityEqualityComparer()); - public static IEqualityComparer MessageComparer => _messageComparer ?? (_messageComparer = new MessageEqualityComparer()); + public static IEqualityComparer MessageComparer => _messageComparer ?? (_messageComparer = new EntityEqualityComparer()); private static IEqualityComparer _userComparer; private static IEqualityComparer _guildComparer; @@ -41,29 +41,5 @@ namespace Discord return obj?.Id.GetHashCode() ?? 0; } } - - // Message IDs are allegedly not guaranteed to be globally unique forever, - // so they require a specialized implementation. - private sealed class MessageEqualityComparer : EqualityComparer - { - public override bool Equals(IMessage x, IMessage y) - { - bool xNull = x == null; - bool yNull = y == null; - - if (xNull && yNull) - return true; - - if (xNull ^ yNull) - return false; - - return x.Channel.Id.Equals(y.Channel.Id) && x.Id.Equals(y.Id); - } - - public override int GetHashCode(IMessage obj) - { - return obj?.Id.GetHashCode() ?? 0; - } - } } }