mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java-refactoring] ChangeMethodSignatureFromUsageFix: remove external type annotations
Fixes IDEA-366962 Quick-fix for adding method parameter generates long jetbrains UnknownNullability annotation GitOrigin-RevId: 03d9b8be45670e6a72696d740d7ca71d746c7267
This commit is contained in:
committed by
intellij-monorepo-bot
parent
eef850617b
commit
ae7957d3c7
+3
-2
@@ -451,9 +451,10 @@ public class ChangeMethodSignatureFromUsageFix implements IntentionAction/*, Hig
|
||||
if (PsiPolyExpressionUtil.isPolyExpression(expression)) return false;
|
||||
PsiType exprType = CommonJavaRefactoringUtil.getTypeByExpression(expression);
|
||||
if (exprType == null || PsiTypes.voidType().equals(exprType)) return false;
|
||||
if (exprType instanceof PsiDisjunctionType) {
|
||||
exprType = ((PsiDisjunctionType)exprType).getLeastUpperBound();
|
||||
if (exprType instanceof PsiDisjunctionType disjunctionType) {
|
||||
exprType = disjunctionType.getLeastUpperBound();
|
||||
}
|
||||
exprType = PsiTypesUtil.removeExternalAnnotations(exprType);
|
||||
if (!PsiTypesUtil.allTypeParametersResolved(myTargetMethod, exprType)) return false;
|
||||
JavaCodeStyleManager codeStyleManager = JavaCodeStyleManager.getInstance(expression.getProject());
|
||||
String name = suggestUniqueParameterName(codeStyleManager, expression, exprType, existingNames);
|
||||
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
// "Add 'Integer' as 1st parameter to method 'perform'" "true"
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
public class FutureWhenDone {
|
||||
public void handle(CompletableFuture<Integer> future) {
|
||||
future.whenComplete((r, e) -> {
|
||||
perform(r);
|
||||
});
|
||||
}
|
||||
|
||||
private void perform(Integer r) {
|
||||
System.out.println();
|
||||
}
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
// "Add 'Integer' as 1st parameter to method 'perform'" "true"
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
public class FutureWhenDone {
|
||||
public void handle(CompletableFuture<Integer> future) {
|
||||
future.whenComplete((r, e) -> {
|
||||
perform(<caret>r);
|
||||
});
|
||||
}
|
||||
|
||||
private void perform() {
|
||||
System.out.println();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user