JSpecify: remove annotations unsupported yet

This commit is contained in:
Victor Petukhov
2020-10-09 14:48:52 +03:00
parent fb8bba4dfb
commit 8974128be4
6 changed files with 1 additions and 68 deletions
@@ -32,18 +32,10 @@ val DEFAULT_JSPECIFY_APPLICABILITY = listOf(
)
val JSPECIFY_DEFAULT_ANNOTATIONS = mapOf(
JSPECIFY_DEFAULT_NULLABLE to JavaDefaultQualifiers(
NullabilityQualifierWithMigrationStatus(NullabilityQualifier.NULLABLE),
DEFAULT_JSPECIFY_APPLICABILITY
),
JSPECIFY_DEFAULT_NOT_NULL to JavaDefaultQualifiers(
NullabilityQualifierWithMigrationStatus(NullabilityQualifier.NOT_NULL),
DEFAULT_JSPECIFY_APPLICABILITY,
affectsTypeParameterBasedTypes = false
),
JSPECIFY_DEFAULT_NULLNESS_UNKNOWN to JavaDefaultQualifiers(
NullabilityQualifierWithMigrationStatus(NullabilityQualifier.FORCE_FLEXIBILITY),
DEFAULT_JSPECIFY_APPLICABILITY
)
)
@@ -19,12 +19,9 @@ package org.jetbrains.kotlin.load.java
import org.jetbrains.kotlin.name.FqName
val JSPECIFY_NULLABLE = FqName("org.jspecify.annotations.Nullable")
val JSPECIFY_NOT_NULL = FqName("org.jspecify.annotations.NotNull")
val JSPECIFY_NULLNESS_UNKNOWN = FqName("org.jspecify.annotations.NullnessUnspecified")
val JSPECIFY_DEFAULT_NULLABLE = FqName("org.jspecify.annotations.DefaultNullable")
val JSPECIFY_DEFAULT_NOT_NULL = FqName("org.jspecify.annotations.DefaultNonNull")
val JSPECIFY_DEFAULT_NULLNESS_UNKNOWN = FqName("org.jspecify.annotations.DefaultNullnessUnspecified")
val NULLABLE_ANNOTATIONS = listOf(
JvmAnnotationNames.JETBRAINS_NULLABLE_ANNOTATION,
@@ -73,11 +70,8 @@ val NULLABILITY_ANNOTATIONS = mutableSetOf<FqName>() +
ANDROIDX_RECENTLY_NULLABLE_ANNOTATION +
ANDROIDX_RECENTLY_NON_NULL_ANNOTATION +
JSPECIFY_NULLABLE +
JSPECIFY_NOT_NULL +
JSPECIFY_NULLNESS_UNKNOWN +
JSPECIFY_DEFAULT_NULLABLE +
JSPECIFY_DEFAULT_NOT_NULL +
JSPECIFY_DEFAULT_NULLNESS_UNKNOWN
JSPECIFY_DEFAULT_NOT_NULL
val READ_ONLY_ANNOTATIONS = listOf(
JvmAnnotationNames.JETBRAINS_READONLY_ANNOTATION,
@@ -108,7 +108,6 @@ class SignatureEnhancement(
if (javaTypeEnhancementState.jspecifyReportLevel == ReportLevel.IGNORE) return null
val isForWarningOnly = javaTypeEnhancementState.jspecifyReportLevel == ReportLevel.WARN
return when (annotationFqName) {
JSPECIFY_NOT_NULL -> NullabilityQualifierWithMigrationStatus(NullabilityQualifier.NOT_NULL, isForWarningOnly)
JSPECIFY_NULLABLE -> NullabilityQualifierWithMigrationStatus(NullabilityQualifier.NULLABLE, isForWarningOnly)
JSPECIFY_NULLNESS_UNKNOWN ->
NullabilityQualifierWithMigrationStatus(NullabilityQualifier.FORCE_FLEXIBILITY, isForWarningOnly)
@@ -1,19 +0,0 @@
/*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jspecify.annotations;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.METHOD, ElementType.TYPE_USE, ElementType.PARAMETER, ElementType.CONSTRUCTOR, ElementType.PACKAGE, ElementType.TYPE})
public @interface DefaultNullable {
}
@@ -1,19 +0,0 @@
/*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jspecify.annotations;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.METHOD, ElementType.TYPE_USE, ElementType.PARAMETER, ElementType.CONSTRUCTOR, ElementType.PACKAGE, ElementType.TYPE})
public @interface DefaultNullnessUnspecified {
}
@@ -1,14 +0,0 @@
package org.jspecify.annotations;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.METHOD, ElementType.TYPE_USE, ElementType.PARAMETER})
public @interface NotNull {
}