rspec/rules/S1172/vbnet/rule.adoc

64 lines
1.4 KiB
Plaintext

== Why is this an issue?
Unused parameters are misleading. Whatever the values passed to such parameters, the behavior will be the same.
This rule raises an issue when a ``++private++`` procedure of a ``++Class++``, ``++Module++`` or ``++Structure++`` takes a parameter without using it.
=== Noncompliant code example
[source,vbnet]
----
Private Sub DoSomething(ByVal a As Integer, ByVal b as Integer) ' "b" is unused
Compute(a)
End Sub
Private Function DoSomething2(ByVal a As Integer, ByVal b As Integer) As Integer ' "a" is unused
Compute(b)
Return b
End Function
----
=== Compliant solution
[source,vbnet]
----
Private Sub DoSomething(ByVal a As Integer)
Compute(a)
End Sub
Private Function DoSomething2(ByVal b As Integer) As Integer
Compute(b)
Return b
End Function
----
=== Exceptions
This rule doesn't raise any issue in the following contexts:
* Procedures decorated with attributes.
* Empty procedures.
* Procedures which only throw ``++NotImplementedException++``.
* Main methods.
* ``++virtual++``, ``++override++`` procedures.
* Interface implementations.
* Event handlers.
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
include::../message.adoc[]
'''
== Comments And Links
(visible only on this page)
include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]