When working with Span<char> or ReadOnlySpan<char> for zero-allocation string processing, comparing against known string values required calling MemoryExtensions.SequenceEqual or similar methods.
C# 11 allows you to use is and switch to pattern match a Span<char> or ReadOnlySpan<char> directly against a string constant.
Code
C#
static int ParseCommand(ReadOnlySpan<char> command) => command switch
{
"start" => 1,
"stop" => 2,
"reset" => 3,
_ => -1
};C#
static int ParseCommand(ReadOnlySpan<char> command)
{
if (command.SequenceEqual("start")) return 1;
if (command.SequenceEqual("stop")) return 2;
if (command.SequenceEqual("reset")) return 3;
return -1;
}