From 938ea40791168747226e70329ce5525c22449ee8 Mon Sep 17 00:00:00 2001 From: UNV Date: Mon, 1 Dec 2025 19:52:43 +0300 Subject: [PATCH] Updates after localizing HighlightInfo.getDescription. --- .../impl/analysis/HighlightMethodUtil.java | 32 ++++++------------- .../daemon/impl/analysis/HighlightUtil.java | 7 ++-- .../quickfix/ArgumentFixerActionFactory.java | 3 +- .../quickfix/ConstructorParametersFixer.java | 2 +- .../impl/quickfix/PermuteArgumentsFix.java | 15 ++++++--- .../impl/quickfix/QualifyThisArgumentFix.java | 2 +- .../quickfix/RemoveRedundantArgumentsFix.java | 4 +-- 7 files changed, 30 insertions(+), 35 deletions(-) diff --git a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java index 989d9bd3f..f91cfe25d 100644 --- a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java +++ b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java @@ -1776,7 +1776,7 @@ public static HighlightInfo.Builder checkOverrideEquivalentInheritedMethods( PsiFile containingFile, @Nonnull LanguageLevel languageLevel ) { - String description = null; + LocalizeValue description = LocalizeValue.empty(); boolean appendImplementMethodFix = true; Collection visibleSignatures = aClass.getVisibleSignatures(); PsiResolveHelper resolveHelper = JavaPsiFacade.getInstance(aClass.getProject()).getResolveHelper(); @@ -1821,7 +1821,7 @@ public static HighlightInfo.Builder checkOverrideEquivalentInheritedMethods( HighlightUtil.formatClass(containingClass), JavaHighlightUtil.formatMethod(superMethod), HighlightUtil.formatClass(superMethod.getContainingClass()) - ).get(); + ); appendImplementMethodFix = false; break Ultimate; } @@ -1829,14 +1829,14 @@ public static HighlightInfo.Builder checkOverrideEquivalentInheritedMethods( continue; } - if (description == null) { + if (description == LocalizeValue.empty()) { highlightInfo = checkMethodIncompatibleThrows(signature, superSignatures, false, aClass); if (highlightInfo != null) { description = highlightInfo.getDescription(); } } - if (description == null) { + if (description == LocalizeValue.empty()) { HighlightInfo.Builder hlBuilder = checkMethodWeakerPrivileges(signature, superSignatures, false, containingFile); highlightInfo = hlBuilder == null ? null : hlBuilder.create(); if (highlightInfo != null) { @@ -1844,12 +1844,12 @@ public static HighlightInfo.Builder checkOverrideEquivalentInheritedMethods( } } - if (description != null) { + if (description != LocalizeValue.empty()) { break; } } - if (description != null) { + if (description != LocalizeValue.empty()) { // show error info at the class level HighlightInfo.Builder hlBuilder = HighlightInfo.newHighlightInfo(HighlightInfoType.ERROR) .range(HighlightNamesUtil.getClassDeclarationTextRange(aClass)) @@ -2321,22 +2321,10 @@ private static void registerChangeMethodSignatureFromUsageIntention( PsiSubstitutor substitutor = candidate.getSubstitutor(); if (method != null && context.getManager().isInProject(method)) { QuickFixFactory factory = QuickFixFactory.getInstance(); - hlBuilder.newFix(factory.createChangeMethodSignatureFromUsageFix( - method, - expressions, - substitutor, - context, - false, - 2 - )).fixRange(fixRange).register() - .newFix(factory.createChangeMethodSignatureFromUsageReverseOrderFix( - method, - expressions, - substitutor, - context, - false, - 2 - )).fixRange(fixRange).register(); + hlBuilder.newFix(factory.createChangeMethodSignatureFromUsageFix(method, expressions, substitutor, context, false, 2)) + .fixRange(fixRange).register() + .newFix(factory.createChangeMethodSignatureFromUsageReverseOrderFix(method, expressions, substitutor, context, false, 2)) + .fixRange(fixRange).register(); } } } diff --git a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightUtil.java b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightUtil.java index e3d6615ce..48aad6c4b 100644 --- a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightUtil.java +++ b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/analysis/HighlightUtil.java @@ -2732,10 +2732,11 @@ public static HighlightInfo.Builder checkMemberReferencedBeforeConstructorCalled referencedClass = PsiUtil.resolveClassInType(type); } else if (qualifier == null) { - resolved = PsiTreeUtil.getParentOfType(expression, PsiMethod.class, true, PsiMember.class); - if (resolved != null) { - referencedClass = ((PsiMethod) resolved).getContainingClass(); + PsiMethod method = PsiTreeUtil.getParentOfType(expression, PsiMethod.class, true, PsiMember.class); + if (method != null) { + referencedClass = method.getContainingClass(); } + resolved = method; } else if (qualifier instanceof PsiThisExpression thisExpr) { referencedClass = PsiUtil.resolveClassInType(thisExpr.getType()); diff --git a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ArgumentFixerActionFactory.java b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ArgumentFixerActionFactory.java index ba922ad87..8881ed173 100644 --- a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ArgumentFixerActionFactory.java +++ b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ArgumentFixerActionFactory.java @@ -24,6 +24,7 @@ import consulo.language.util.IncorrectOperationException; import consulo.logging.Logger; import consulo.util.lang.Comparing; +import jakarta.annotation.Nonnull; import jakarta.annotation.Nullable; import java.util.*; @@ -38,7 +39,7 @@ public abstract class ArgumentFixerActionFactory { protected abstract PsiExpression getModifiedArgument(PsiExpression expression, PsiType toType) throws IncorrectOperationException; @RequiredWriteAction - public void registerCastActions(CandidateInfo[] candidates, PsiCall call, HighlightInfo.Builder hlBuilder, TextRange fixRange) { + public void registerCastActions(CandidateInfo[] candidates, PsiCall call, HighlightInfo.Builder hlBuilder, @Nonnull TextRange fixRange) { if (candidates.length == 0) { return; } diff --git a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ConstructorParametersFixer.java b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ConstructorParametersFixer.java index 80bd1cf9e..790033edd 100644 --- a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ConstructorParametersFixer.java +++ b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/ConstructorParametersFixer.java @@ -34,7 +34,7 @@ public static void registerFixActions( @Nonnull PsiJavaCodeReferenceElement ctrRef, PsiConstructorCall constructorCall, @Nonnull HighlightInfo.Builder highlightInfo, - TextRange fixRange + @Nonnull TextRange fixRange ) { JavaResolveResult resolved = ctrRef.advancedResolve(false); PsiClass aClass = (PsiClass)resolved.getElement(); diff --git a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/PermuteArgumentsFix.java b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/PermuteArgumentsFix.java index 65cd10d55..2400d6ff1 100644 --- a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/PermuteArgumentsFix.java +++ b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/PermuteArgumentsFix.java @@ -78,7 +78,12 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file) throws } @RequiredReadAction - public static void registerFix(HighlightInfo.Builder hlBuilder, PsiCall callExpression, CandidateInfo[] candidates, TextRange fixRange) { + public static void registerFix( + HighlightInfo.Builder hlBuilder, + PsiCall callExpression, + CandidateInfo[] candidates, + @Nonnull TextRange fixRange + ) { PsiExpression[] expressions = callExpression.getArgumentList().getExpressions(); if (hlBuilder == null || expressions.length < 2) { return; @@ -87,7 +92,7 @@ public static void registerFix(HighlightInfo.Builder hlBuilder, PsiCall callExpr for (CandidateInfo candidate : candidates) { if (candidate instanceof MethodCandidateInfo) { - MethodCandidateInfo methodCandidate = (MethodCandidateInfo)candidate; + MethodCandidateInfo methodCandidate = (MethodCandidateInfo) candidate; PsiMethod method = methodCandidate.getElement(); PsiSubstitutor substitutor = methodCandidate.getSubstitutor(); @@ -158,7 +163,7 @@ private static void registerShiftFixes( { ArrayUtil.rotateLeft(expressions, i, j); if (PsiUtil.isApplicable(method, substitutor, expressions)) { - PsiCall copy = (PsiCall)callExpression.copy(); + PsiCall copy = (PsiCall) callExpression.copy(); PsiExpression[] copyExpressions = copy.getArgumentList().getExpressions(); for (int k = i; k < copyExpressions.length; k++) { copyExpressions[k].replace(expressions[k]); @@ -178,7 +183,7 @@ private static void registerShiftFixes( { ArrayUtil.rotateRight(expressions, i, j); if (PsiUtil.isApplicable(method, substitutor, expressions)) { - PsiCall copy = (PsiCall)callExpression.copy(); + PsiCall copy = (PsiCall) callExpression.copy(); PsiExpression[] copyExpressions = copy.getArgumentList().getExpressions(); for (int k = i; k < copyExpressions.length; k++) { copyExpressions[k].replace(expressions[k]); @@ -218,7 +223,7 @@ private static void registerSwapFixes( for (int j = i + 1; j <= maxIncompatibleIndex; j++) { ArrayUtil.swap(expressions, i, j); if (PsiUtil.isApplicable(method, substitutor, expressions)) { - PsiCall copy = (PsiCall)callExpression.copy(); + PsiCall copy = (PsiCall) callExpression.copy(); PsiExpression[] copyExpressions = copy.getArgumentList().getExpressions(); copyExpressions[i].replace(expressions[i]); copyExpressions[j].replace(expressions[j]); diff --git a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/QualifyThisArgumentFix.java b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/QualifyThisArgumentFix.java index 04685e58b..e7ae95647 100644 --- a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/QualifyThisArgumentFix.java +++ b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/QualifyThisArgumentFix.java @@ -77,7 +77,7 @@ public static void registerQuickFixAction( CandidateInfo[] candidates, PsiCall call, HighlightInfo.Builder highlightInfo, - TextRange fixRange + @Nonnull TextRange fixRange ) { if (candidates.length == 0) { return; diff --git a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/RemoveRedundantArgumentsFix.java b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/RemoveRedundantArgumentsFix.java index 2944b0336..372f871df 100644 --- a/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/RemoveRedundantArgumentsFix.java +++ b/java-analysis-impl/src/main/java/com/intellij/java/analysis/impl/codeInsight/daemon/impl/quickfix/RemoveRedundantArgumentsFix.java @@ -127,7 +127,7 @@ public static void registerIntentions( @Nonnull JavaResolveResult[] candidates, @Nonnull PsiExpressionList arguments, @Nullable HighlightInfo.Builder hlBuilder, - TextRange fixRange + @Nonnull TextRange fixRange ) { if (hlBuilder == null) { return; @@ -140,7 +140,7 @@ public static void registerIntentions( private static void registerIntention( @Nonnull PsiExpressionList arguments, @Nonnull HighlightInfo.Builder hlBuilder, - TextRange fixRange, + @Nonnull TextRange fixRange, @Nonnull JavaResolveResult candidate, @Nonnull PsiElement context ) {