mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java-i18n] Restore passed to non-nls variable behavior
GitOrigin-RevId: 8ec8b1f762120000cb492411bf0386e18325a7e1
This commit is contained in:
committed by
intellij-monorepo-bot
parent
bce2b85074
commit
a3838dcd03
+12
@@ -0,0 +1,12 @@
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
// "Annotate variable 'a' as @NonNls" "true"
|
||||
class Foo {
|
||||
public void doTest() {
|
||||
@NonNls String a = (s("test"));
|
||||
}
|
||||
|
||||
String s(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
// "Annotate variable 'a' as @NonNls" "true"
|
||||
class Foo {
|
||||
public void doTest() {
|
||||
@NonNls String a = (this.s("test"));
|
||||
}
|
||||
|
||||
String s(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// "Annotate variable 'a' as @NonNls" "true"
|
||||
class Foo {
|
||||
public void doTest() {
|
||||
String a = (s("t<caret>est"));
|
||||
}
|
||||
|
||||
String s(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// "Annotate variable 'a' as @NonNls" "true"
|
||||
class Foo {
|
||||
public void doTest() {
|
||||
String a = (this.s("t<caret>est"));
|
||||
}
|
||||
|
||||
String s(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
@@ -949,7 +949,7 @@ public class I18nInspection extends AbstractBaseUastLocalInspectionTool implemen
|
||||
|
||||
private boolean isPassedToNonNlsVariable(@NotNull UExpression expression,
|
||||
final Set<? super PsiModifierListOwner> nonNlsTargets) {
|
||||
UExpression toplevel = JavaI18nUtil.getTopLevelExpression(expression);
|
||||
UExpression toplevel = JavaI18nUtil.getTopLevelExpression(expression, false);
|
||||
PsiModifierListOwner var = null;
|
||||
if (UastExpressionUtils.isAssignment(toplevel)) {
|
||||
UExpression lExpression = ((UBinaryExpression)toplevel).getLeftOperand();
|
||||
@@ -1030,7 +1030,7 @@ public class I18nInspection extends AbstractBaseUastLocalInspectionTool implemen
|
||||
|
||||
private static boolean isInNonNlsCall(@NotNull UExpression expression,
|
||||
final Set<? super PsiModifierListOwner> nonNlsTargets) {
|
||||
UExpression parent = UastUtils.skipParenthesizedExprDown(JavaI18nUtil.getTopLevelExpression(expression));
|
||||
UExpression parent = UastUtils.skipParenthesizedExprDown(JavaI18nUtil.getTopLevelExpression(expression, true));
|
||||
if (parent instanceof UQualifiedReferenceExpression) {
|
||||
return isNonNlsCall((UQualifiedReferenceExpression)parent, nonNlsTargets);
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ public final class JavaI18nUtil extends I18nUtil {
|
||||
}
|
||||
|
||||
@NotNull
|
||||
static UExpression getTopLevelExpression(@NotNull UExpression expression) {
|
||||
static UExpression getTopLevelExpression(@NotNull UExpression expression, boolean stopAtCall) {
|
||||
while (expression.getUastParent() instanceof UExpression) {
|
||||
final UExpression parent = (UExpression)expression.getUastParent();
|
||||
if (parent instanceof UBlockExpression || parent instanceof UReturnExpression) {
|
||||
@@ -141,7 +141,7 @@ public final class JavaI18nUtil extends I18nUtil {
|
||||
}
|
||||
expression = parent;
|
||||
if (UastExpressionUtils.isAssignment(expression)) break;
|
||||
if (expression instanceof UCallExpression) {
|
||||
if (expression instanceof UCallExpression && stopAtCall) {
|
||||
UastCallKind kind = ((UCallExpression)expression).getKind();
|
||||
if (kind == UastCallKind.METHOD_CALL) {
|
||||
if (expression.getUastParent() instanceof UQualifiedReferenceExpression) {
|
||||
|
||||
Reference in New Issue
Block a user