
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.
57 lines
1.3 KiB
Plaintext
57 lines
1.3 KiB
Plaintext
== Why is this an issue?
|
|
|
|
The bitwise operators ``++&++``, ``++|++`` can be mistaken for the boolean operators ``++&&++`` and ``++||++``.
|
|
|
|
|
|
This rule raises an issue when ``++&++`` or ``++|++`` is used in a boolean context.
|
|
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,javascript]
|
|
----
|
|
if (a & b) { ... } // Noncompliant; & used in error
|
|
----
|
|
|
|
|
|
=== Compliant solution
|
|
|
|
[source,javascript]
|
|
----
|
|
if (a && b) { ... }
|
|
----
|
|
|
|
|
|
=== Exceptions
|
|
|
|
When a file contains other bitwise operations, (``++^++``, ``++<<++``, ``++>>>++``, ``++>>++``, ``++~++``, ``++&=++``, ``++^=++``, ``++|=++``, ``++<<=++``, ``++>>=++``, ``++>>>=++`` and ``++&++`` or ``++|++`` used with a numeric literal as the right operand) all issues in the file are ignored, because it is evidence that bitwise operations are truly intended in the file.
|
|
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
=== Message
|
|
|
|
Review this use of bitwise "x" operator; conditional "xx" might have been intended.
|
|
|
|
|
|
=== Highlighting
|
|
|
|
the operator
|
|
|
|
|
|
'''
|
|
== Comments And Links
|
|
(visible only on this page)
|
|
|
|
=== on 17 Mar 2017, 09:52:25 Elena Vilchik wrote:
|
|
\[~ann.campbell.2] Could you update this RSPEC corresponding to SONARJS-928? I've explained in comment the scope of implementation.
|
|
|
|
=== on 17 Mar 2017, 15:02:08 Ann Campbell wrote:
|
|
Done.
|
|
|
|
endif::env-github,rspecator-view[]
|