Code inspection: Some values of the enum are not processed inside 'switch' statement and are handled via default section
When using a switch
statement with an enum
, it is not required to have a case
statement for each enum value — if some values do not have cases, they will be handled in the default
section.
This might be intended by the author to handle some unimportant values. But this might be also a consequence of adding a new value to the enum
and forgetting to update the switch
accordingly.
ReSharper flags such switch
statements as potential issues and suggests generating case
statements for unhandled values.
enum TestEnum
{
A,
B
}
class Program
{
void Test(TestEnum testEnum)
{
switch (testEnum)
{
case TestEnum.A:
Console.WriteLine("A");
break;
// case E.B will be handled in the default section
default: Console.WriteLine("X"); break;
}
}
}
Last modified: 11 February 2024