rspec/rules/S2333/csharp/rule.adoc
2020-12-23 14:59:06 +01:00

43 lines
849 B
Plaintext

Unnecessary keywords simply clutter the code and should be removed. Specifically:
* ``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
== 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()
{
}
}
----