mirror of
https://github.com/nsnail/spectre.console.git
synced 2025-09-18 02:15:34 +08:00
32 lines
1.1 KiB
C#
32 lines
1.1 KiB
C#
namespace Spectre.Console.Cli;
|
|
|
|
internal static class CaseSensitivityExtensions
|
|
{
|
|
public static StringComparison GetStringComparison(this CaseSensitivity caseSensitivity, CommandPart part)
|
|
{
|
|
if (part == CommandPart.CommandName && (caseSensitivity & CaseSensitivity.Commands) == 0)
|
|
{
|
|
return StringComparison.OrdinalIgnoreCase;
|
|
}
|
|
else if (part == CommandPart.LongOption && (caseSensitivity & CaseSensitivity.LongOptions) == 0)
|
|
{
|
|
return StringComparison.OrdinalIgnoreCase;
|
|
}
|
|
|
|
return StringComparison.Ordinal;
|
|
}
|
|
|
|
public static StringComparer GetStringComparer(this CaseSensitivity caseSensitivity, CommandPart part)
|
|
{
|
|
if (part == CommandPart.CommandName && (caseSensitivity & CaseSensitivity.Commands) == 0)
|
|
{
|
|
return StringComparer.OrdinalIgnoreCase;
|
|
}
|
|
else if (part == CommandPart.LongOption && (caseSensitivity & CaseSensitivity.LongOptions) == 0)
|
|
{
|
|
return StringComparer.OrdinalIgnoreCase;
|
|
}
|
|
|
|
return StringComparer.Ordinal;
|
|
}
|
|
} |