rspec/rules/S3532/csharp/rule.adoc

77 lines
1.1 KiB
Plaintext
Raw Normal View History

2021-04-28 16:49:39 +02:00
The ``++default++`` clause should take appropriate action. Having an empty ``++default++`` is a waste of keystrokes.
2021-04-28 16:49:39 +02:00
== Noncompliant Code Example
----
enum Fruit
{
Apple,
Orange,
Banana
}
void PrintName(Fruit fruit)
{
switch(fruit)
{
case Fruit.Apple:
Console.WriteLine("apple");
break;
default: //Noncompliant
break;
}
}
----
2021-04-28 16:49:39 +02:00
== Compliant Solution
----
enum Fruit
{
Apple,
Orange,
Banana
}
void PrintName(Fruit fruit)
{
switch(fruit)
{
case Fruit.Apple:
Console.WriteLine("apple");
break;
default:
throw new NotSupportedException();
}
}
----
or
----
void PrintName(Fruit fruit)
{
switch(fruit)
{
case Fruit.Apple:
Console.WriteLine("apple");
break;
}
}
----
2021-04-28 16:49:39 +02:00
== Exceptions
``++default++`` clauses containing only a comment are ignored with the assumption that they are empty on purpose and the comment documents why.
ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)
include::comments-and-links.adoc[]
endif::env-github,rspecator-view[]