Files
SharpIDE/src/SharpIDE.Application/Features/SolutionDiscovery/SharpIdeModelComparers.cs
2025-10-30 19:41:14 +10:00

32 lines
884 B
C#

namespace SharpIDE.Application.Features.SolutionDiscovery;
public class SharpIdeFileComparer : IComparer<SharpIdeFile>
{
public static readonly SharpIdeFileComparer Instance = new SharpIdeFileComparer();
public int Compare(SharpIdeFile? x, SharpIdeFile? y)
{
if (ReferenceEquals(x, y)) return 0;
if (x is null) return -1;
if (y is null) return 1;
int result = string.Compare(x.Path, y.Path, StringComparison.OrdinalIgnoreCase);
return result;
}
}
public class SharpIdeFolderComparer : IComparer<SharpIdeFolder>
{
public static readonly SharpIdeFolderComparer Instance = new SharpIdeFolderComparer();
public int Compare(SharpIdeFolder? x, SharpIdeFolder? y)
{
if (ReferenceEquals(x, y)) return 0;
if (x is null) return -1;
if (y is null) return 1;
int result = string.Compare(x.Path, y.Path, StringComparison.OrdinalIgnoreCase);
return result;
}
}