mirror of
https://github.com/ICDSystems/ICD.Common.Utils.git
synced 2026-02-13 11:44:57 +00:00
feat: IcdHashSet constructor overloads for IEqualityComparer param
This commit is contained in:
@@ -46,8 +46,8 @@ namespace ICD.Common.Utils.Collections
|
||||
/// Constructor.
|
||||
/// </summary>
|
||||
public IcdHashSet()
|
||||
: this(Enumerable.Empty<T>())
|
||||
{
|
||||
m_Dict = new Dictionary<T, object>();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -55,10 +55,33 @@ namespace ICD.Common.Utils.Collections
|
||||
/// </summary>
|
||||
/// <param name="items"></param>
|
||||
public IcdHashSet(IEnumerable<T> items)
|
||||
: this()
|
||||
: this(EqualityComparer<T>.Default, items)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Constructor.
|
||||
/// </summary>
|
||||
/// <param name="comparer"></param>
|
||||
public IcdHashSet(IEqualityComparer<T> comparer)
|
||||
: this(comparer, Enumerable.Empty<T>())
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Constructor.
|
||||
/// </summary>
|
||||
/// <param name="comparer"></param>
|
||||
/// <param name="items"></param>
|
||||
public IcdHashSet(IEqualityComparer<T> comparer, IEnumerable<T> items)
|
||||
{
|
||||
if (comparer == null)
|
||||
throw new ArgumentNullException("comparer");
|
||||
|
||||
if (items == null)
|
||||
return;
|
||||
throw new ArgumentNullException("items");
|
||||
|
||||
m_Dict = new Dictionary<T, object>(comparer);
|
||||
|
||||
AddRange(items);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user