Fred Tingaud 16f6c0aecf
Inline adoc when include has no additional value (#1940)
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.
2023-05-25 14:18:12 +02:00

53 lines
1.1 KiB
Plaintext

== Why is this an issue?
Loop counters should not be modified in the body of the loop. However other loop control variables representing logical values may be modified in the loop, for example a flag to indicate that something has been completed, which is then tested in the for statement.
=== Noncompliant code example
[source,javascript]
----
var names = [ "Jack", "Jim", "", "John" ];
for (var i = 0; i < names.length; i++) {
if (!names[i]) {
i = names.length; // Non-Compliant
} else {
console.log(names[i]);
}
}
----
=== Compliant solution
[source,javascript]
----
var names = [ "Jack", "Jim", "", "John" ];
for (var name of names) {
if (!name) {
break; // Compliant
} else {
console.log(name);
}
}
----
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
=== Message
Remove this assignment of "x".
=== Highlighting
* Primary: assigned counter variable
* Secondary: counter variable in ``++for++``-loop signature
endif::env-github,rspecator-view[]