
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
43 lines
878 B
Plaintext
43 lines
878 B
Plaintext
== Why is this an issue?
|
|
|
|
Indexed properties are meant to represent access to a logical collection. When multiple parameters are required, this design guideline may be violated, and refactoring the property into a method is preferable.
|
|
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,vbnet]
|
|
----
|
|
Module Module1
|
|
ReadOnly Property Sum(ByVal a As Integer, ByVal b As Integer) ' Noncompliant
|
|
Get
|
|
Return a + b
|
|
End Get
|
|
End Property
|
|
End Module
|
|
----
|
|
|
|
|
|
=== Compliant solution
|
|
|
|
[source,vbnet]
|
|
----
|
|
Module Module1
|
|
Function Sum(ByVal a As Integer, ByVal b As Integer) ' Compliant
|
|
Return a + b
|
|
End Function
|
|
End Module
|
|
----
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
=== Message
|
|
|
|
This indexed property has nn parameters, use methods instead.
|
|
|
|
|
|
endif::env-github,rspecator-view[]
|