| File: CentralPackageVersionNameComparer.cs | Web Access |
| Project: src\nuget-client\src\NuGet.Core\NuGet.LibraryModel\NuGet.LibraryModel.csproj (NuGet.LibraryModel) |
// Copyright(c) .NET Foundation.All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; using System.Collections.Generic; namespace NuGet.LibraryModel { public sealed class CentralPackageVersionNameComparer : IEqualityComparer<CentralPackageVersion> { /// <summary> /// Returns a singleton instance for the <see cref="CentralPackageVersionNameComparer"/>. /// </summary> public static CentralPackageVersionNameComparer Default { get; } = new(); /// <summary> /// Get a singleton instance only through the <see cref="CentralPackageVersionNameComparer.Default"/>. /// </summary> private CentralPackageVersionNameComparer() { } public bool Equals(CentralPackageVersion? x, CentralPackageVersion? y) { return string.Equals(x?.Name, y?.Name, StringComparison.OrdinalIgnoreCase); } public int GetHashCode(CentralPackageVersion obj) { if (obj == null) { throw new ArgumentNullException(nameof(obj)); } return StringComparer.OrdinalIgnoreCase.GetHashCode(obj.Name); } } }