rspec/rules/S3398/rule.adoc

45 lines
752 B
Plaintext

== Why is this an issue?
When a ``++private++`` method is only invoked by an inner class, there's no reason not to move it into that class. It will still have the same access to the outer class' members, but the outer class will be clearer and less cluttered.
=== Noncompliant code example
[source,text]
----
public class Outie {
private int i=0;
private void increment() { // Noncompliant
i++;
}
public class Innie {
public void doTheThing() {
Outie.this.increment();
}
}
}
----
=== Compliant solution
[source,text]
----
public class Outie {
private int i=0;
public class Innie {
public void doTheThing() {
increment();
}
private void increment() {
Outie.this.i++;
}
}
}
----