[FIR] Refactor: rename function
This commit is contained in:
committed by
Space Team
parent
07567d6748
commit
82c39187f6
+1
-3
@@ -18,7 +18,6 @@ import org.jetbrains.kotlin.analysis.api.fir.types.PublicTypeApproximator
|
||||
import org.jetbrains.kotlin.analysis.api.lifetime.KtLifetimeToken
|
||||
import org.jetbrains.kotlin.analysis.api.types.KtType
|
||||
import org.jetbrains.kotlin.analysis.api.types.KtTypeMappingMode
|
||||
import org.jetbrains.kotlin.analysis.api.lifetime.withValidityAssertion
|
||||
import org.jetbrains.kotlin.asJava.classes.KtLightClassForFacade
|
||||
import org.jetbrains.kotlin.asJava.elements.KtLightElement
|
||||
import org.jetbrains.kotlin.codegen.signature.BothSignatureWriter
|
||||
@@ -27,7 +26,6 @@ import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.toRegularClassSymbol
|
||||
import org.jetbrains.kotlin.fir.backend.jvm.jvmTypeMapper
|
||||
import org.jetbrains.kotlin.fir.resolve.fullyExpandedType
|
||||
import org.jetbrains.kotlin.fir.resolve.substitution.AbstractConeSubstitutor
|
||||
@@ -114,7 +112,7 @@ private fun ConeKotlinType.needLocalTypeApproximation(
|
||||
session: FirSession,
|
||||
useSitePosition: PsiElement
|
||||
): Boolean {
|
||||
if (!shouldHideLocalType(visibilityForApproximation, isInlineFunction)) return false
|
||||
if (!shouldApproximateLocalTypesOfNonLocalDeclaration(visibilityForApproximation, isInlineFunction)) return false
|
||||
val localTypes: List<ConeKotlinType> = if (isLocal(session)) listOf(this) else {
|
||||
typeArguments.mapNotNull {
|
||||
if (it is ConeKotlinTypeProjection && it.type.isLocal(session)) {
|
||||
|
||||
+3
-3
@@ -13,7 +13,7 @@ import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isInline
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirAnonymousObjectSymbol
|
||||
import org.jetbrains.kotlin.fir.types.coneType
|
||||
import org.jetbrains.kotlin.fir.types.shouldHideLocalType
|
||||
import org.jetbrains.kotlin.fir.types.shouldApproximateLocalTypesOfNonLocalDeclaration
|
||||
import org.jetbrains.kotlin.fir.types.toSymbol
|
||||
import org.jetbrains.kotlin.fir.types.visibilityForApproximation
|
||||
|
||||
@@ -23,7 +23,7 @@ object FirAmbiguousAnonymousTypeChecker : FirBasicDeclarationChecker() {
|
||||
require(declaration is FirCallableDeclaration)
|
||||
if (context.containingDeclarations.any { it.isLocalMember || it is FirAnonymousObject }) return
|
||||
|
||||
if (!shouldHideLocalType(
|
||||
if (!shouldApproximateLocalTypesOfNonLocalDeclaration(
|
||||
declaration.visibilityForApproximation(context.containingDeclarations.lastOrNull()),
|
||||
declaration.isInline
|
||||
)
|
||||
@@ -42,4 +42,4 @@ object FirAmbiguousAnonymousTypeChecker : FirBasicDeclarationChecker() {
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -385,7 +385,7 @@ private fun FirTypeRef.hideLocalTypeIfNeeded(
|
||||
session: FirSession,
|
||||
isInlineFunction: Boolean = false
|
||||
): FirTypeRef {
|
||||
if (this !is FirResolvedTypeRef || !shouldHideLocalType(containingCallableVisibility, isInlineFunction)) return this
|
||||
if (this !is FirResolvedTypeRef || !shouldApproximateLocalTypesOfNonLocalDeclaration(containingCallableVisibility, isInlineFunction)) return this
|
||||
return withReplacedConeType(type.approximateToOnlySupertype(session))
|
||||
}
|
||||
|
||||
@@ -425,7 +425,7 @@ private fun ConeKotlinType.approximateToOnlySupertype(session: FirSession): Cone
|
||||
return result
|
||||
}
|
||||
|
||||
fun shouldHideLocalType(containingCallableVisibility: Visibility?, isInlineFunction: Boolean): Boolean {
|
||||
fun shouldApproximateLocalTypesOfNonLocalDeclaration(containingCallableVisibility: Visibility?, isInlineFunction: Boolean): Boolean {
|
||||
if (containingCallableVisibility == null) {
|
||||
return false
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user