do not infer @NotNull for final fields with initializer (IDEA-75616)

This commit is contained in:
anna
2012-02-15 11:42:03 +01:00
parent 93f635b17c
commit c20dfe0a93
3 changed files with 13 additions and 0 deletions

View File

@@ -150,6 +150,7 @@ public class NullityInferrer {
final PsiModifierListOwner element = pointer.getElement();
if (element != null) {
if (shouldIgnore(element)) continue;
if (element instanceof PsiField && ((PsiField)element).hasInitializer() && element.hasModifierProperty(PsiModifier.FINAL)) continue;
new AddAnnotationFix(manager.getDefaultNotNull(), element, manager.getDefaultNullable()).invoke(project, null,
element.getContainingFile());
}

View File

@@ -32,6 +32,12 @@ class Test {
@Nullable
final String myFoo10;
final String myFoo11 = "";
@NotNull
final String myFoo12;
@Nullable
final String myFoo13 = null;
/**
* {@link #myFoo6}
*/
@@ -42,6 +48,7 @@ class Test {
myFoo8 = paramNullable;
myFoo9 = simpleParam;
myFoo10 = foo10(false);
myFoo12 = "";
}
@Nullable

View File

@@ -23,6 +23,10 @@ class Test {
final String myFoo9;
final String myFoo10;
final String myFoo11 = "";
final String myFoo12;
final String myFoo13 = null;
/**
* {@link #myFoo6}
*/
@@ -33,6 +37,7 @@ class Test {
myFoo8 = paramNullable;
myFoo9 = simpleParam;
myFoo10 = foo10(false);
myFoo12 = "";
}
String foo10(boolean flag) {