mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-18 04:21:24 +07:00
[java-inference] Failure contract: better null->fail inference (IDEA-230802)
GitOrigin-RevId: 778b9be125871e9002c719fb50f205a202439b2f
This commit is contained in:
committed by
intellij-monorepo-bot
parent
b4c69a9cec
commit
5a04ca5310
Binary file not shown.
@@ -13,6 +13,22 @@ import java.nio.file.Files;
|
||||
*/
|
||||
@SuppressWarnings({"unused", "IOResourceOpenedButNotSafelyClosed"})
|
||||
public class Test01 {
|
||||
@ExpectContract("null,_->fail;_,_->param1")
|
||||
static <T> T checkNotNull(T object, String s) {
|
||||
check(object != null, s, s);
|
||||
return object;
|
||||
}
|
||||
|
||||
@ExpectContract("null,_->fail")
|
||||
static void checkNotNullVoid(Object object, String s) {
|
||||
check(object != null, s, s);
|
||||
}
|
||||
|
||||
@ExpectContract("!null,_->fail")
|
||||
static void checkNull(Object object, String s) {
|
||||
check(object == null, s, s);
|
||||
}
|
||||
|
||||
@ExpectContract("true,_->fail")
|
||||
static void checkNegate(boolean val, String s1) {
|
||||
check(!val, s1, null);
|
||||
@@ -139,7 +155,7 @@ public class Test01 {
|
||||
}
|
||||
|
||||
@ExpectContract(value="null,_->fail", pure = true)
|
||||
public static void assertNotNull(@ExpectNotNull Object obj, String message) {
|
||||
public static void assertNotNull(Object obj, String message) {
|
||||
if (obj == null) {
|
||||
throw new IllegalArgumentException(message);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user