mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-20 21:41:24 +07:00
[java-analysis] NullableNotNullManager: remove deprecated and unused methods
GitOrigin-RevId: eaad92b7ab9a4908a9591f46747f75ad27eb9f1d
This commit is contained in:
committed by
intellij-monorepo-bot
parent
ae07e6def7
commit
f46f96d05f
@@ -6,7 +6,10 @@ import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Ref;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.util.*;
|
||||
import org.jetbrains.annotations.*;
|
||||
import org.jetbrains.annotations.Contract;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.annotations.Unmodifiable;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
@@ -53,40 +56,14 @@ public abstract class NullableNotNullManager {
|
||||
|
||||
public abstract @NotNull String getDefaultNullable();
|
||||
|
||||
/**
|
||||
* Returns an annotation which marks given element as Nullable, if any.
|
||||
* @deprecated use {@link #findEffectiveNullabilityInfo(PsiModifierListOwner)} instead.
|
||||
*/
|
||||
@ApiStatus.ScheduledForRemoval
|
||||
@Deprecated
|
||||
public @Nullable PsiAnnotation getNullableAnnotation(@NotNull PsiModifierListOwner owner, boolean checkBases) {
|
||||
NullabilityAnnotationInfo info = findEffectiveNullabilityInfo(owner);
|
||||
if (info == null || info.getNullability() != Nullability.NULLABLE) return null;
|
||||
if (!checkBases && info.getInheritedFrom() != null) return null;
|
||||
return info.getAnnotation();
|
||||
}
|
||||
|
||||
public abstract void setDefaultNullable(@NotNull String defaultNullable);
|
||||
|
||||
public abstract @NotNull String getDefaultNotNull();
|
||||
|
||||
/**
|
||||
* Returns an annotation which marks given element as NotNull, if any.
|
||||
* @deprecated use {@link #findEffectiveNullabilityInfo(PsiModifierListOwner)} instead.
|
||||
*/
|
||||
@ApiStatus.ScheduledForRemoval
|
||||
@Deprecated
|
||||
public @Nullable PsiAnnotation getNotNullAnnotation(@NotNull PsiModifierListOwner owner, boolean checkBases) {
|
||||
NullabilityAnnotationInfo info = findEffectiveNullabilityInfo(owner);
|
||||
if (info == null || info.getNullability() != Nullability.NOT_NULL) return null;
|
||||
if (!checkBases && info.getInheritedFrom() != null) return null;
|
||||
return info.getAnnotation();
|
||||
}
|
||||
|
||||
public @Nullable PsiAnnotation copyNotNullAnnotation(@NotNull PsiModifierListOwner original, @NotNull PsiModifierListOwner generated) {
|
||||
public void copyNotNullAnnotation(@NotNull PsiModifierListOwner original, @NotNull PsiModifierListOwner generated) {
|
||||
NullabilityAnnotationInfo info = findOwnNullabilityInfo(original);
|
||||
if (info == null || info.getNullability() != Nullability.NOT_NULL) return null;
|
||||
return copyAnnotation(info.getAnnotation(), generated);
|
||||
if (info == null || info.getNullability() != Nullability.NOT_NULL) return;
|
||||
copyAnnotation(info.getAnnotation(), generated);
|
||||
}
|
||||
|
||||
public @Nullable PsiAnnotation copyNullableAnnotation(@NotNull PsiModifierListOwner original, @NotNull PsiModifierListOwner generated) {
|
||||
@@ -281,14 +258,6 @@ public abstract class NullableNotNullManager {
|
||||
return nullability;
|
||||
}
|
||||
|
||||
private static boolean areDifferentNullityAnnotations(@NotNull PsiAnnotation memberAnno, @NotNull PsiAnnotation typeAnno) {
|
||||
NullableNotNullManager manager = getInstance(memberAnno.getProject());
|
||||
List<String> notNulls = manager.getNotNullsWithNickNames();
|
||||
List<String> nullables = manager.getNullablesWithNickNames();
|
||||
return nullables.contains(typeAnno.getQualifiedName()) && notNulls.contains(memberAnno.getQualifiedName()) ||
|
||||
nullables.contains(memberAnno.getQualifiedName()) && notNulls.contains(typeAnno.getQualifiedName());
|
||||
}
|
||||
|
||||
protected @NotNull List<String> getNullablesWithNickNames() {
|
||||
return getNullables();
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.refactoring.changeSignature
|
||||
|
||||
import com.intellij.codeInsight.Nullability
|
||||
import com.intellij.codeInsight.NullableNotNullManager
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.util.Ref
|
||||
@@ -26,7 +27,6 @@ import org.jetbrains.kotlin.asJava.unwrapped
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.idea.base.projectStructure.forcedModuleInfo
|
||||
import org.jetbrains.kotlin.idea.base.projectStructure.moduleInfo
|
||||
import org.jetbrains.kotlin.util.match
|
||||
import org.jetbrains.kotlin.idea.base.resources.KotlinBundle
|
||||
import org.jetbrains.kotlin.idea.base.util.useScope
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.*
|
||||
@@ -50,7 +50,10 @@ import org.jetbrains.kotlin.idea.util.getReceiverTargetDescriptor
|
||||
import org.jetbrains.kotlin.kdoc.psi.impl.KDocName
|
||||
import org.jetbrains.kotlin.load.java.descriptors.JavaClassDescriptor
|
||||
import org.jetbrains.kotlin.psi.*
|
||||
import org.jetbrains.kotlin.psi.psiUtil.*
|
||||
import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType
|
||||
import org.jetbrains.kotlin.psi.psiUtil.getParentOfTypeAndBranch
|
||||
import org.jetbrains.kotlin.psi.psiUtil.getValueParameters
|
||||
import org.jetbrains.kotlin.psi.psiUtil.parents
|
||||
import org.jetbrains.kotlin.resolve.BindingContext
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
import org.jetbrains.kotlin.resolve.calls.tasks.ExplicitReceiverKind
|
||||
@@ -60,6 +63,7 @@ import org.jetbrains.kotlin.resolve.scopes.receivers.ExtensionReceiver
|
||||
import org.jetbrains.kotlin.resolve.scopes.receivers.ImplicitReceiver
|
||||
import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue
|
||||
import org.jetbrains.kotlin.util.OperatorNameConventions
|
||||
import org.jetbrains.kotlin.util.match
|
||||
import org.jetbrains.kotlin.utils.addIfNotNull
|
||||
import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull
|
||||
|
||||
@@ -583,23 +587,21 @@ class KotlinChangeSignatureUsageProcessor : ChangeSignatureUsageProcessor {
|
||||
}
|
||||
|
||||
private fun getNullabilityAnnotation(element: PsiModifierListOwner): PsiAnnotation? {
|
||||
val nullAnnotation = nullManager.getNullableAnnotation(element, false)
|
||||
val notNullAnnotation = nullManager.getNotNullAnnotation(element, false)
|
||||
if ((nullAnnotation == null) == (notNullAnnotation == null)) return null
|
||||
return nullAnnotation ?: notNullAnnotation
|
||||
val info = nullManager.findEffectiveNullabilityInfo(element) ?: return null
|
||||
if (info.inheritedFrom != null || info.isContainer) return null
|
||||
return info.annotation
|
||||
}
|
||||
|
||||
private fun addNullabilityAnnotationIfApplicable(element: PsiModifierListOwner, annotation: PsiAnnotation?) {
|
||||
val nullableAnnotation = nullManager.getNullableAnnotation(element, false)
|
||||
val notNullAnnotation = nullManager.getNotNullAnnotation(element, false)
|
||||
|
||||
if (notNullAnnotation != null && nullableAnnotation == null && element is PsiMethod) return
|
||||
val info = nullManager.findEffectiveNullabilityInfo(element)
|
||||
if (info != null && info.nullability == Nullability.NOT_NULL && info.inheritedFrom == null && element is PsiMethod) return
|
||||
|
||||
val annotationQualifiedName = annotation?.qualifiedName
|
||||
if (annotationQualifiedName != null && javaPsiFacade.findClass(annotationQualifiedName, element.resolveScope) == null) return
|
||||
|
||||
notNullAnnotation?.delete()
|
||||
nullableAnnotation?.delete()
|
||||
if (info != null && !info.isContainer && info.inheritedFrom == null) {
|
||||
info.annotation.delete()
|
||||
}
|
||||
|
||||
if (annotationQualifiedName == null) return
|
||||
|
||||
|
||||
Reference in New Issue
Block a user