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
|
|
|
|
2021-01-27 13:42:22 +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()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
----
|