mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-10-01 23:06:24 +07:00
Java: make Inline parameter Flexible Constructor Bodies aware (IDEA-377621)
GitOrigin-RevId: ee720fecb1fb4c447188eab28090bc858d22119e
This commit is contained in:
committed by
intellij-monorepo-bot
parent
40d25dbdc3
commit
c44bcf0283
+5
-5
@@ -7,6 +7,7 @@ import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.openapi.util.Ref;
|
||||
import com.intellij.pom.java.JavaFeature;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.controlFlow.DefUseUtil;
|
||||
import com.intellij.psi.search.searches.ReferencesSearch;
|
||||
@@ -136,11 +137,10 @@ public class InlineParameterExpressionProcessor extends BaseRefactoringProcessor
|
||||
}
|
||||
}
|
||||
|
||||
final PsiParameter[] parameters = myMethod.getParameterList().getParameters();
|
||||
final List<ParameterInfoImpl> psiParameters = new ArrayList<>();
|
||||
int paramIdx = 0;
|
||||
final String paramName = myParameter.getName();
|
||||
for (PsiParameter param : parameters) {
|
||||
for (PsiParameter param : myMethod.getParameterList().getParameters()) {
|
||||
if (!Comparing.strEqual(paramName, param.getName())) {
|
||||
psiParameters.add(ParameterInfoImpl.create(paramIdx).withName(param.getName()).withType(param.getType()));
|
||||
}
|
||||
@@ -291,9 +291,9 @@ public class InlineParameterExpressionProcessor extends BaseRefactoringProcessor
|
||||
}
|
||||
|
||||
private @Nullable PsiElement findAnchorForLocalVariableDeclaration(PsiCodeBlock body) {
|
||||
PsiMethodCallExpression call = JavaPsiConstructorUtil.findThisOrSuperCallInConstructor(myMethod);
|
||||
if (call != null) {
|
||||
return call.getParent();
|
||||
if (!JavaFeature.STATEMENTS_BEFORE_SUPER.isSufficient(PsiUtil.getLanguageLevel(body))) {
|
||||
PsiMethodCallExpression call = JavaPsiConstructorUtil.findThisOrSuperCallInConstructor(myMethod);
|
||||
if (call != null) return call.getParent();
|
||||
}
|
||||
return body.getLBrace();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user