mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java-i18n] isNonNlsCall: support qualified variable initializers (IDEA-247587)
GitOrigin-RevId: d2856d609eb5593438c9f1d1a3e7806d6314bb2d
This commit is contained in:
committed by
intellij-monorepo-bot
parent
9b0cb377b4
commit
bbd238474a
@@ -1050,8 +1050,8 @@ public class I18nInspection extends AbstractBaseUastLocalInspectionTool implemen
|
||||
ULocalVariable uVar = UastContextKt.toUElement(resolved, ULocalVariable.class);
|
||||
if (uVar != null) {
|
||||
UExpression initializer = uVar.getUastInitializer();
|
||||
if (initializer instanceof UCallExpression) {
|
||||
PsiMethod method = ((UCallExpression)initializer).resolve();
|
||||
if (initializer instanceof UResolvable) {
|
||||
PsiModifierListOwner method = ObjectUtils.tryCast(((UResolvable)initializer).resolve(), PsiModifierListOwner.class);
|
||||
if (method != null) {
|
||||
if (annotatedAsNonNls(method)) return true;
|
||||
nonNlsTargets.add(method);
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
class Test {
|
||||
interface X {
|
||||
@NonNls String getInterfaceString();
|
||||
}
|
||||
|
||||
@NonNls String getLocalString() { return "s"; }
|
||||
|
||||
void test(X x){
|
||||
final String s1 = x.getInterfaceString();
|
||||
if (s1.equals("test")) {
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
final String s2 = getLocalString();
|
||||
if (s2.equals("test")) {
|
||||
System.out.println();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -61,6 +61,9 @@ public class I18NInspectionTest extends LightJavaCodeInsightFixtureTestCase {
|
||||
myTool.setNonNlsCommentPattern("MYNON-NLS");
|
||||
doTest();
|
||||
}
|
||||
public void testPropagateToInterfaceMethod() {
|
||||
doTest();
|
||||
}
|
||||
|
||||
public void testNlsOnly() {
|
||||
doTestNlsMode();
|
||||
|
||||
Reference in New Issue
Block a user