mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
All annotation methods are pure
GitOrigin-RevId: 728b66cdd1070f48652ddba4beaa6410b9a1a5b3
This commit is contained in:
committed by
intellij-monorepo-bot
parent
e9abcbe265
commit
e5e0756b9a
+5
@@ -8,6 +8,7 @@ import com.intellij.psi.*;
|
||||
import com.intellij.psi.util.CachedValueProvider;
|
||||
import com.intellij.psi.util.CachedValuesManager;
|
||||
import com.intellij.psi.util.PsiModificationTracker;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.siyeh.ig.psiutils.ExpressionUtils;
|
||||
import com.siyeh.ig.psiutils.MethodCallUtils;
|
||||
@@ -106,6 +107,7 @@ public class JavaMethodContractUtil {
|
||||
|
||||
static class ContractInfo {
|
||||
static final ContractInfo EMPTY = new ContractInfo(Collections.emptyList(), false, false, MutationSignature.UNKNOWN);
|
||||
static final ContractInfo PURE = new ContractInfo(Collections.emptyList(), true, false, MutationSignature.PURE);
|
||||
|
||||
private final @NotNull List<StandardMethodContract> myContracts;
|
||||
private final boolean myPure;
|
||||
@@ -139,6 +141,9 @@ public class JavaMethodContractUtil {
|
||||
}
|
||||
|
||||
static @NotNull ContractInfo getContractInfo(@NotNull PsiMethod method) {
|
||||
if (PsiUtil.isAnnotationMethod(method)) {
|
||||
return ContractInfo.PURE;
|
||||
}
|
||||
return CachedValuesManager.getCachedValue(method, () -> {
|
||||
final PsiAnnotation contractAnno = findContractAnnotation(method);
|
||||
ContractInfo info = ContractInfo.EMPTY;
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
// "Simplify 'my.value() == null' to false" "true"
|
||||
class Test {
|
||||
void some(SuppressWarnings my) {
|
||||
if (my == null) {
|
||||
System.out.println("null");
|
||||
}
|
||||
}
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
// "Simplify 'my.value() == null' to false" "true"
|
||||
class Test {
|
||||
void some(SuppressWarnings my) {
|
||||
if (my == null || my.value() =<caret>= null) {
|
||||
System.out.println("null");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user