71 lines
1.5 KiB
Plaintext
71 lines
1.5 KiB
Plaintext
:true: True
|
|
:false: False
|
|
:ops: Not, And, Or, =
|
|
== Why is this an issue?
|
|
|
|
include::../description.adoc[]
|
|
|
|
== How to fix it
|
|
|
|
include::../how-to-fix-it.adoc[]
|
|
|
|
=== Code examples
|
|
|
|
==== Noncompliant code example
|
|
|
|
[source,vbnet,diff-id=1,diff-type=noncompliant]
|
|
----
|
|
If BooleanMethod() = True Then ' Noncompliant
|
|
' ...
|
|
End If
|
|
If BooleanMethod() = False Then ' Noncompliant
|
|
' ...
|
|
End If
|
|
If BooleanMethod() OrElse False Then ' Noncompliant
|
|
' ...
|
|
End If
|
|
DoSomething(Not False) ' Noncompliant
|
|
DoSomething(BooleanMethod() = True) ' Noncompliant
|
|
|
|
Dim booleanVariable = If(BooleanMethod(), True, False) ' Noncompliant
|
|
booleanVariable = If(BooleanMethod(), True, exp) ' Noncompliant
|
|
booleanVariable = If(BooleanMethod(), False, exp) ' Noncompliant
|
|
booleanVariable = If(BooleanMethod(), exp, True) ' Noncompliant
|
|
booleanVariable = If(BooleanMethod(), exp, False) ' Noncompliant
|
|
----
|
|
|
|
==== Compliant solution
|
|
|
|
[source,vbnet,diff-id=1,diff-type=compliant]
|
|
----
|
|
If BooleanMethod() Then
|
|
' ...
|
|
End If
|
|
If Not BooleanMethod() Then
|
|
' ...
|
|
End If
|
|
If BooleanMethod() Then
|
|
' ...
|
|
End If
|
|
DoSomething(True)
|
|
DoSomething(BooleanMethod())
|
|
|
|
Dim booleanVariable = BooleanMethod()
|
|
booleanVariable = BooleanMethod() OrElse exp
|
|
booleanVariable = Not BooleanMethod() AndAlso exp
|
|
booleanVariable = Not BooleanMethod() OrElse exp
|
|
booleanVariable = BooleanMethod() AndAlso exp
|
|
----
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
include::../message.adoc[]
|
|
|
|
'''
|
|
|
|
endif::env-github,rspecator-view[]
|