rspec/rules/S1439/flex/rule.adoc
Fred Tingaud 51369b610e
Make sure that includes are always surrounded by empty lines (#2270)
When an include is not surrounded by empty lines, its content is inlined
on the same line as the adjacent content. That can lead to broken tags
and other display issues.
This PR fixes all such includes and introduces a validation step that
forbids introducing the same problem again.
2023-06-22 10:38:01 +02:00

46 lines
856 B
Plaintext

== Why is this an issue?
Any statement or block of statements can be identified by a label, but those labels should be used only on ``++while++``, ``++do-while++`` and ``++for++`` statements. Using labels in any other context leads to unstructured, confusing code.
=== Noncompliant code example
[source,flex]
----
myLabel:if (i % 2 == 0) { // Noncompliant
if (i == 12) {
print("12");
break myLabel;
}
print("Odd number, but not 12");
}
----
=== Compliant solution
[source,flex]
----
myLabel:for (i = 0; i < 10; i++) { // Compliant
print("Loop");
break myLabel;
}
----
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[]