2020-06-30 12:48:07 +02:00
|
|
|
Unnecessary keywords simply clutter the code and should be removed. Specifically:
|
2020-06-30 14:49:38 +02:00
|
|
|
|
2020-12-23 14:59:06 +01:00
|
|
|
* ``partial`` on type declarations that are completely defined in one place
|
|
|
|
* ``sealed`` on members of ``sealed`` classes
|
|
|
|
* ``unsafe`` method or block inside construct already marked with ``unsafe``, or when there are no ``unsafe`` constructs in the block
|
|
|
|
* ``checked`` and ``unchecked`` blocks with no integral-type arithmetic operations
|
2020-06-30 12:48:07 +02:00
|
|
|
|
|
|
|
== Noncompliant Code Example
|
|
|
|
|
|
|
|
----
|
|
|
|
public partial class MyClass // Noncompliant
|
|
|
|
{
|
|
|
|
public virtual void Method()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public sealed class MyOtherClass : MyClass
|
|
|
|
{
|
|
|
|
public sealed override void Method() // Noncompliant
|
|
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
----
|
|
|
|
|
|
|
|
== Compliant Solution
|
|
|
|
|
|
|
|
----
|
|
|
|
public class MyClass
|
|
|
|
{
|
|
|
|
public virtual void Method()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public sealed class MyOtherClass : MyClass
|
|
|
|
{
|
|
|
|
public override void Method()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
----
|