[java-psi] Better support of PsiCapturedWildcardType nullability

GitOrigin-RevId: 756345df368a8908f257ad525b2a32d074ea2620
This commit is contained in:
Tagir Valeev
2025-10-02 16:54:13 +00:00
committed by intellij-monorepo-bot
parent 729da788d4
commit f82677cd70
2 changed files with 3 additions and 3 deletions
@@ -96,14 +96,14 @@ public final class PsiCapturedWildcardType extends PsiType.Stub {
public @NotNull TypeNullability getNullability() {
if (myNullability == null) {
TypeNullability nullability = TypeNullability.UNKNOWN;
if (myExistential.isBounded()) {
if (myExistential.isExtends()) {
nullability = myExistential.getNullability();
} else {
NullableNotNullManager manager = NullableNotNullManager.getInstance(myContext.getProject());
if (manager != null) {
NullabilityAnnotationInfo defaultNullability = manager.findDefaultTypeUseNullability(myContext);
if (defaultNullability != null && defaultNullability.getNullability() == Nullability.NOT_NULL) {
nullability = getUpperBound().getNullability();
nullability = getUpperBound().getNullability().inherited();
}
}
}
@@ -227,7 +227,7 @@ public final class PsiTypeNullabilityTest extends LightJavaCodeInsightFixtureTes
}
""");
assertEquals("X<?>", type.getCanonicalText());
assertEquals("NULLABLE (@Nullable)", ((PsiClassType)type).getParameters()[0].getNullability().toString());
assertEquals("NULLABLE (inherited @Nullable)", ((PsiClassType)type).getParameters()[0].getNullability().toString());
}
public void testSubstitutorOnTypeParameterUnknown() {