[SLC] rename from toFilterWithAdditionalNull to toOptionalFilter

^KT-56046
This commit is contained in:
Dmitrii Gridin
2023-02-02 17:00:10 +01:00
committed by Space Team
parent 482bc15a70
commit 00eddae867
9 changed files with 23 additions and 20 deletions
@@ -24,7 +24,10 @@ import org.jetbrains.kotlin.name.JvmNames.JVM_SYNTHETIC_ANNOTATION_CLASS_ID
import org.jetbrains.kotlin.name.StandardClassIds import org.jetbrains.kotlin.name.StandardClassIds
import org.jetbrains.kotlin.resolve.deprecation.DeprecationLevelValue import org.jetbrains.kotlin.resolve.deprecation.DeprecationLevelValue
internal fun AnnotationUseSiteTarget?.toFilterWithAdditionalNull(): AnnotationUseSiteTargetFilter { /**
* @return [AnnotationUseSiteTargetFilter] which allows [this] and [NoAnnotationUseSiteTargetFilter] filter
*/
internal fun AnnotationUseSiteTarget?.toOptionalFilter(): AnnotationUseSiteTargetFilter {
if (this == null) return NoAnnotationUseSiteTargetFilter if (this == null) return NoAnnotationUseSiteTargetFilter
return annotationUseSiteTargetFilterOf(NoAnnotationUseSiteTargetFilter, toFilter()) return annotationUseSiteTargetFilterOf(NoAnnotationUseSiteTargetFilter, toFilter())
@@ -71,7 +71,7 @@ class SymbolLightClassForFacade(
annotationsProvider = SymbolAnnotationsProvider( annotationsProvider = SymbolAnnotationsProvider(
ktModule = this.ktModule, ktModule = this.ktModule,
annotatedSymbolPointer = firstFileInFacade.symbolPointerOfType<KtFileSymbol>(), annotatedSymbolPointer = firstFileInFacade.symbolPointerOfType<KtFileSymbol>(),
annotationUseSiteTargetFilter = AnnotationUseSiteTarget.FILE.toFilterWithAdditionalNull(), annotationUseSiteTargetFilter = AnnotationUseSiteTarget.FILE.toOptionalFilter(),
) )
) )
}, },
@@ -309,7 +309,7 @@ internal fun SymbolLightClassBase.createPropertyAccessors(
if (this !is SymbolLightClassForFacade && propertyTypeIsValueClass) return if (this !is SymbolLightClassForFacade && propertyTypeIsValueClass) return
fun KtPropertyAccessorSymbol.needToCreateAccessor(siteTarget: AnnotationUseSiteTarget): Boolean { fun KtPropertyAccessorSymbol.needToCreateAccessor(siteTarget: AnnotationUseSiteTarget): Boolean {
val useSiteTargetFilterForPropertyAccessor = siteTarget.toFilterWithAdditionalNull() val useSiteTargetFilterForPropertyAccessor = siteTarget.toOptionalFilter()
if (onlyJvmStatic && if (onlyJvmStatic &&
!hasJvmStaticAnnotation(useSiteTargetFilterForPropertyAccessor) && !hasJvmStaticAnnotation(useSiteTargetFilterForPropertyAccessor) &&
!declaration.hasJvmStaticAnnotation(useSiteTargetFilterForPropertyAccessor) !declaration.hasJvmStaticAnnotation(useSiteTargetFilterForPropertyAccessor)
@@ -404,7 +404,7 @@ private fun hasBackingField(property: KtPropertySymbol): Boolean {
val fieldUseSite = AnnotationUseSiteTarget.FIELD val fieldUseSite = AnnotationUseSiteTarget.FIELD
if (property.modality == Modality.ABSTRACT || if (property.modality == Modality.ABSTRACT ||
property.isHiddenOrSynthetic(fieldUseSite, fieldUseSite.toFilterWithAdditionalNull()) property.isHiddenOrSynthetic(fieldUseSite, fieldUseSite.toOptionalFilter())
) return false ) return false
return hasBackingFieldByPsi ?: property.hasBackingField return hasBackingFieldByPsi ?: property.hasBackingField
@@ -87,7 +87,7 @@ internal class SymbolLightFieldForProperty private constructor(
private val _isDeprecated: Boolean by lazyPub { private val _isDeprecated: Boolean by lazyPub {
withPropertySymbol { propertySymbol -> withPropertySymbol { propertySymbol ->
propertySymbol.hasDeprecatedAnnotation(AnnotationUseSiteTarget.FIELD.toFilterWithAdditionalNull()) propertySymbol.hasDeprecatedAnnotation(AnnotationUseSiteTarget.FIELD.toOptionalFilter())
} }
} }
@@ -125,7 +125,7 @@ internal class SymbolLightFieldForProperty private constructor(
PsiModifier.VOLATILE -> withPropertySymbol { propertySymbol -> PsiModifier.VOLATILE -> withPropertySymbol { propertySymbol ->
val hasAnnotation = propertySymbol.hasAnnotation( val hasAnnotation = propertySymbol.hasAnnotation(
VOLATILE_ANNOTATION_CLASS_ID, VOLATILE_ANNOTATION_CLASS_ID,
AnnotationUseSiteTarget.FIELD.toFilterWithAdditionalNull(), AnnotationUseSiteTarget.FIELD.toOptionalFilter(),
) )
mapOf(modifier to hasAnnotation) mapOf(modifier to hasAnnotation)
@@ -134,7 +134,7 @@ internal class SymbolLightFieldForProperty private constructor(
PsiModifier.TRANSIENT -> withPropertySymbol { propertySymbol -> PsiModifier.TRANSIENT -> withPropertySymbol { propertySymbol ->
val hasAnnotation = propertySymbol.hasAnnotation( val hasAnnotation = propertySymbol.hasAnnotation(
TRANSIENT_ANNOTATION_CLASS_ID, TRANSIENT_ANNOTATION_CLASS_ID,
AnnotationUseSiteTarget.FIELD.toFilterWithAdditionalNull(), AnnotationUseSiteTarget.FIELD.toOptionalFilter(),
) )
mapOf(modifier to hasAnnotation) mapOf(modifier to hasAnnotation)
@@ -157,7 +157,7 @@ internal class SymbolLightFieldForProperty private constructor(
annotationsProvider = SymbolAnnotationsProvider( annotationsProvider = SymbolAnnotationsProvider(
ktModule = ktModule, ktModule = ktModule,
annotatedSymbolPointer = propertySymbolPointer, annotatedSymbolPointer = propertySymbolPointer,
annotationUseSiteTargetFilter = AnnotationUseSiteTarget.FIELD.toFilterWithAdditionalNull(), annotationUseSiteTargetFilter = AnnotationUseSiteTarget.FIELD.toOptionalFilter(),
), ),
additionalAnnotationsProvider = NullabilityAnnotationsProvider { additionalAnnotationsProvider = NullabilityAnnotationsProvider {
withPropertySymbol { propertySymbol -> withPropertySymbol { propertySymbol ->
@@ -91,7 +91,7 @@ internal class SymbolLightAccessorMethod private constructor(
private val _name: String by lazyPub { private val _name: String by lazyPub {
analyzeForLightClasses(ktModule) { analyzeForLightClasses(ktModule) {
propertyAccessorSymbol().getJvmNameFromAnnotation(accessorSite.toFilterWithAdditionalNull()) ?: run { propertyAccessorSymbol().getJvmNameFromAnnotation(accessorSite.toOptionalFilter()) ?: run {
val symbol = propertySymbol() val symbol = propertySymbol()
val defaultName = symbol.name.identifier.let { val defaultName = symbol.name.identifier.let {
if (this@SymbolLightAccessorMethod.containingClass.isAnnotationType) it else it.abiName() if (this@SymbolLightAccessorMethod.containingClass.isAnnotationType) it else it.abiName()
@@ -136,7 +136,7 @@ internal class SymbolLightAccessorMethod private constructor(
builder, builder,
this@SymbolLightAccessorMethod, this@SymbolLightAccessorMethod,
containingClass, containingClass,
accessorSite.toFilterWithAdditionalNull(), accessorSite.toOptionalFilter(),
) )
} }
} }
@@ -178,7 +178,7 @@ internal class SymbolLightAccessorMethod private constructor(
return@analyzeForLightClasses true return@analyzeForLightClasses true
} }
val filter = accessorSite.toFilterWithAdditionalNull() val filter = accessorSite.toOptionalFilter()
propertySymbol.hasJvmStaticAnnotation(filter) || propertyAccessorSymbol().hasJvmStaticAnnotation(filter) propertySymbol.hasJvmStaticAnnotation(filter) || propertyAccessorSymbol().hasJvmStaticAnnotation(filter)
} }
@@ -191,7 +191,7 @@ internal class SymbolLightAccessorMethod private constructor(
SymbolAnnotationsProvider( SymbolAnnotationsProvider(
ktModule = ktModule, ktModule = ktModule,
annotatedSymbolPointer = propertyAccessorSymbolPointer, annotatedSymbolPointer = propertyAccessorSymbolPointer,
annotationUseSiteTargetFilter = accessorSite.toFilterWithAdditionalNull(), annotationUseSiteTargetFilter = accessorSite.toOptionalFilter(),
), ),
SymbolAnnotationsProvider( SymbolAnnotationsProvider(
ktModule = ktModule, ktModule = ktModule,
@@ -222,7 +222,7 @@ internal class SymbolLightAccessorMethod private constructor(
private val _isDeprecated: Boolean by lazyPub { private val _isDeprecated: Boolean by lazyPub {
analyzeForLightClasses(ktModule) { analyzeForLightClasses(ktModule) {
val filter = accessorSite.toFilterWithAdditionalNull() val filter = accessorSite.toOptionalFilter()
propertySymbol().hasDeprecatedAnnotation(filter) || propertyAccessorSymbol().hasDeprecatedAnnotation(filter) propertySymbol().hasDeprecatedAnnotation(filter) || propertyAccessorSymbol().hasDeprecatedAnnotation(filter)
} }
} }
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.descriptors.annotations.AnnotationUseSiteTarget
import org.jetbrains.kotlin.light.classes.symbol.SymbolLightMemberBase import org.jetbrains.kotlin.light.classes.symbol.SymbolLightMemberBase
import org.jetbrains.kotlin.light.classes.symbol.annotations.getJvmNameFromAnnotation import org.jetbrains.kotlin.light.classes.symbol.annotations.getJvmNameFromAnnotation
import org.jetbrains.kotlin.light.classes.symbol.annotations.hasPublishedApiAnnotation import org.jetbrains.kotlin.light.classes.symbol.annotations.hasPublishedApiAnnotation
import org.jetbrains.kotlin.light.classes.symbol.annotations.toFilterWithAdditionalNull import org.jetbrains.kotlin.light.classes.symbol.annotations.toOptionalFilter
import org.jetbrains.kotlin.light.classes.symbol.classes.SymbolLightClassBase import org.jetbrains.kotlin.light.classes.symbol.classes.SymbolLightClassBase
internal abstract class SymbolLightMethodBase( internal abstract class SymbolLightMethodBase(
@@ -109,7 +109,7 @@ internal abstract class SymbolLightMethodBase(
containingClass: SymbolLightClassBase, containingClass: SymbolLightClassBase,
annotationUseSiteTarget: AnnotationUseSiteTarget? = null, annotationUseSiteTarget: AnnotationUseSiteTarget? = null,
): String where T : KtAnnotatedSymbol, T : KtSymbolWithVisibility, T : KtCallableSymbol { ): String where T : KtAnnotatedSymbol, T : KtSymbolWithVisibility, T : KtCallableSymbol {
getJvmNameFromAnnotation(annotationUseSiteTarget.toFilterWithAdditionalNull())?.let { return it } getJvmNameFromAnnotation(annotationUseSiteTarget.toOptionalFilter())?.let { return it }
if (visibility != Visibilities.Internal) return defaultName if (visibility != Visibilities.Internal) return defaultName
if (containingClass is KtLightClassForFacade) return defaultName if (containingClass is KtLightClassForFacade) return defaultName
@@ -13,7 +13,7 @@ import org.jetbrains.kotlin.descriptors.annotations.AnnotationUseSiteTarget
import org.jetbrains.kotlin.light.classes.symbol.annotations.GranularAnnotationsBox import org.jetbrains.kotlin.light.classes.symbol.annotations.GranularAnnotationsBox
import org.jetbrains.kotlin.light.classes.symbol.annotations.NullabilityAnnotationsProvider import org.jetbrains.kotlin.light.classes.symbol.annotations.NullabilityAnnotationsProvider
import org.jetbrains.kotlin.light.classes.symbol.annotations.SymbolAnnotationsProvider import org.jetbrains.kotlin.light.classes.symbol.annotations.SymbolAnnotationsProvider
import org.jetbrains.kotlin.light.classes.symbol.annotations.toFilterWithAdditionalNull import org.jetbrains.kotlin.light.classes.symbol.annotations.toOptionalFilter
import org.jetbrains.kotlin.light.classes.symbol.methods.SymbolLightMethodBase import org.jetbrains.kotlin.light.classes.symbol.methods.SymbolLightMethodBase
import org.jetbrains.kotlin.light.classes.symbol.modifierLists.SymbolLightClassModifierList import org.jetbrains.kotlin.light.classes.symbol.modifierLists.SymbolLightClassModifierList
import org.jetbrains.kotlin.light.classes.symbol.withSymbol import org.jetbrains.kotlin.light.classes.symbol.withSymbol
@@ -37,7 +37,7 @@ internal class SymbolLightParameter(
annotatedSymbolPointer = parameterSymbolPointer, annotatedSymbolPointer = parameterSymbolPointer,
annotationUseSiteTargetFilter = isConstructorParameterSymbol.ifTrue { annotationUseSiteTargetFilter = isConstructorParameterSymbol.ifTrue {
AnnotationUseSiteTarget.CONSTRUCTOR_PARAMETER AnnotationUseSiteTarget.CONSTRUCTOR_PARAMETER
}.toFilterWithAdditionalNull(), }.toOptionalFilter(),
), ),
additionalAnnotationsProvider = NullabilityAnnotationsProvider(::nullabilityType), additionalAnnotationsProvider = NullabilityAnnotationsProvider(::nullabilityType),
), ),
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.light.classes.symbol.*
import org.jetbrains.kotlin.light.classes.symbol.annotations.GranularAnnotationsBox import org.jetbrains.kotlin.light.classes.symbol.annotations.GranularAnnotationsBox
import org.jetbrains.kotlin.light.classes.symbol.annotations.NullabilityAnnotationsProvider import org.jetbrains.kotlin.light.classes.symbol.annotations.NullabilityAnnotationsProvider
import org.jetbrains.kotlin.light.classes.symbol.annotations.SymbolAnnotationsProvider import org.jetbrains.kotlin.light.classes.symbol.annotations.SymbolAnnotationsProvider
import org.jetbrains.kotlin.light.classes.symbol.annotations.toFilterWithAdditionalNull import org.jetbrains.kotlin.light.classes.symbol.annotations.toOptionalFilter
import org.jetbrains.kotlin.light.classes.symbol.methods.SymbolLightMethodBase import org.jetbrains.kotlin.light.classes.symbol.methods.SymbolLightMethodBase
import org.jetbrains.kotlin.light.classes.symbol.modifierLists.SymbolLightClassModifierList import org.jetbrains.kotlin.light.classes.symbol.modifierLists.SymbolLightClassModifierList
import org.jetbrains.kotlin.psi.KtParameter import org.jetbrains.kotlin.psi.KtParameter
@@ -72,7 +72,7 @@ internal class SymbolLightParameterForReceiver private constructor(
annotationsProvider = SymbolAnnotationsProvider( annotationsProvider = SymbolAnnotationsProvider(
ktModule = ktModule, ktModule = ktModule,
annotatedSymbolPointer = receiverPointer, annotatedSymbolPointer = receiverPointer,
annotationUseSiteTargetFilter = AnnotationUseSiteTarget.RECEIVER.toFilterWithAdditionalNull(), annotationUseSiteTargetFilter = AnnotationUseSiteTarget.RECEIVER.toOptionalFilter(),
), ),
additionalAnnotationsProvider = NullabilityAnnotationsProvider { additionalAnnotationsProvider = NullabilityAnnotationsProvider {
withReceiverSymbol { receiver -> withReceiverSymbol { receiver ->
@@ -46,7 +46,7 @@ internal class SymbolLightSetterParameter(
SymbolAnnotationsProvider( SymbolAnnotationsProvider(
ktModule = ktModule, ktModule = ktModule,
annotatedSymbolPointer = parameterSymbolPointer, annotatedSymbolPointer = parameterSymbolPointer,
annotationUseSiteTargetFilter = AnnotationUseSiteTarget.SETTER_PARAMETER.toFilterWithAdditionalNull(), annotationUseSiteTargetFilter = AnnotationUseSiteTarget.SETTER_PARAMETER.toOptionalFilter(),
), ),
SymbolAnnotationsProvider( SymbolAnnotationsProvider(
ktModule = ktModule, ktModule = ktModule,