mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java-inspections] IDEA-374865 ClassCanBeRecord: make containingClass local in ConstructorBodyProcessor
Replaced the field with a local variable to simplify the class structure. In response to IJ-CR-167896 GitOrigin-RevId: d1678890cdb3733d7f670a5d63c6d854e1926b0c
This commit is contained in:
committed by
intellij-monorepo-bot
parent
dd147c932a
commit
3c61fc793b
+3
-2
@@ -19,7 +19,6 @@ import static com.intellij.psi.PsiModifier.STATIC;
|
||||
|
||||
@NotNullByDefault
|
||||
final class ConstructorBodyProcessor {
|
||||
private final PsiClass containingClass;
|
||||
private final PsiMethod constructor;
|
||||
private final Map<PsiParameter, @Nullable PsiField> paramsToFields = new HashMap<>();
|
||||
// TODO(bartekpacia): change type to SequencedMap once we move to Java 21
|
||||
@@ -42,7 +41,6 @@ final class ConstructorBodyProcessor {
|
||||
|
||||
ConstructorBodyProcessor(PsiMethod constructor,
|
||||
List<PsiField> instanceFields) {
|
||||
this.containingClass = Objects.requireNonNull(constructor.getContainingClass(), "constructor must have containing class");
|
||||
this.constructor = constructor;
|
||||
this.instanceFields = instanceFields;
|
||||
final PsiCodeBlock body = Objects.requireNonNull(constructor.getBody(), "constructor must have body");
|
||||
@@ -60,6 +58,9 @@ final class ConstructorBodyProcessor {
|
||||
}
|
||||
final PsiExpression expression = expressionStatement.getExpression();
|
||||
|
||||
final PsiClass containingClass = constructor.getContainingClass();
|
||||
if (containingClass == null) return;
|
||||
|
||||
if (expression instanceof PsiMethodCallExpression methodCallExpr && JavaPsiConstructorUtil.isChainedConstructorCall(methodCallExpr)) {
|
||||
delegating = true;
|
||||
for (PsiExpression arg : methodCallExpr.getArgumentList().getExpressions()) {
|
||||
|
||||
Reference in New Issue
Block a user