Refactor models and add IHasId/IdBasedEqualityComparer

This commit is contained in:
Alexey Golub
2019-12-06 00:17:14 +02:00
parent 23512dae64
commit fc38afe6a0
10 changed files with 34 additions and 12 deletions

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
namespace DiscordChatExporter.Core.Models
{
public partial class IdBasedEqualityComparer : IEqualityComparer<IHasId>
{
public bool Equals(IHasId? x, IHasId? y) => StringComparer.Ordinal.Equals(x?.Id, y?.Id);
public int GetHashCode(IHasId obj) => StringComparer.Ordinal.GetHashCode(obj.Id);
}
public partial class IdBasedEqualityComparer
{
public static IdBasedEqualityComparer Instance { get; } = new IdBasedEqualityComparer();
}
}