mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-09 11:44:39 +07:00
Fixes IDEA-266098 Constant conditions & exceptions: allow for more fine-grained control regarding NPE GitOrigin-RevId: 32a7b59a0f2c73b6b293b21a8fc0f837a64c3a89
33 lines
988 B
Java
33 lines
988 B
Java
import org.jetbrains.annotations.*;
|
|
|
|
class UnknownNullabilityTest {
|
|
static final String getString() {
|
|
return "foo";
|
|
}
|
|
|
|
static final @UnknownNullability String getString2() {
|
|
return "foo";
|
|
}
|
|
|
|
static final String getStringNullable() {
|
|
return Math.random() > 0.5 ? "foo" : null;
|
|
}
|
|
|
|
static final @UnknownNullability String getStringNullable2() {
|
|
return Math.random() > 0.5 ? "foo" : null;
|
|
}
|
|
|
|
void check() {
|
|
if (<warning descr="Condition 'getString() == null' is always 'false'">getString() == null</warning>) {}
|
|
if (getString2() == null) {}
|
|
if (getStringNullable() == null) {}
|
|
if (getStringNullable2() == null) {}
|
|
}
|
|
|
|
void deref() {
|
|
if (Math.random() > 0.5) getString().trim();
|
|
if (Math.random() > 0.5) getString2().trim();
|
|
if (Math.random() > 0.5) getStringNullable().<warning descr="Method invocation 'trim' may produce 'NullPointerException'">trim</warning>();
|
|
if (Math.random() > 0.5) getStringNullable2().trim();
|
|
}
|
|
} |