rspec/rules/S2696/java/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

50 lines
1016 B
Plaintext

== Why is this an issue?
Correctly updating a ``++static++`` field from a non-static method is tricky to get right and could easily lead to bugs if there are multiple class instances and/or multiple threads in play. Ideally, ``++static++`` fields are only updated from ``++synchronized static++`` methods.
This rule raises an issue each time a ``++static++`` field is updated from a non-static method.
=== Noncompliant code example
[source,java]
----
public class MyClass {
private static int count = 0;
public void doSomething() {
//...
count++; // Noncompliant
}
}
----
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
=== Message
Make the enclosing method "static" or remove this set.
=== Highlighting
* Primary: the field assignment
* Secondary: the field definition
** message: "Field definition."
'''
== Comments And Links
(visible only on this page)
include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]