K2: Minor. Reformat and clean up a couple of transformers

`@Suppress("UNCHECKED_CAST")` became redundant there
This commit is contained in:
Denis.Zharkov
2023-02-20 13:10:13 +01:00
committed by Space Team
parent bdb1e28912
commit c09607c791
2 changed files with 22 additions and 10 deletions
@@ -253,17 +253,21 @@ open class FirTypeResolveTransformer(
shouldNotBeCalled() shouldNotBeCalled()
} }
override fun transformAnnotationCall(annotationCall: FirAnnotationCall, data: Any?): FirStatement = whileAnalysing(session, annotationCall) { override fun transformAnnotationCall(
annotationCall: FirAnnotationCall,
data: Any?
): FirStatement = whileAnalysing(session, annotationCall) {
when (val originalTypeRef = annotationCall.annotationTypeRef) { when (val originalTypeRef = annotationCall.annotationTypeRef) {
is FirResolvedTypeRef -> { is FirResolvedTypeRef -> {
when (annotationCall.annotationResolvePhase) { when (annotationCall.annotationResolvePhase) {
FirAnnotationResolvePhase.Unresolved -> when (originalTypeRef){ FirAnnotationResolvePhase.Unresolved -> when (originalTypeRef) {
is FirErrorTypeRef -> return annotationCall.also { it.replaceAnnotationResolvePhase(FirAnnotationResolvePhase.Types) } is FirErrorTypeRef -> return annotationCall.also { it.replaceAnnotationResolvePhase(FirAnnotationResolvePhase.Types) }
else -> shouldNotBeCalled() else -> shouldNotBeCalled()
} }
FirAnnotationResolvePhase.CompilerRequiredAnnotations -> { FirAnnotationResolvePhase.CompilerRequiredAnnotations -> {
annotationCall.replaceAnnotationResolvePhase(FirAnnotationResolvePhase.Types) annotationCall.replaceAnnotationResolvePhase(FirAnnotationResolvePhase.Types)
val alternativeResolvedTypeRef = originalTypeRef.delegatedTypeRef?.transformSingle(this, data) ?: return annotationCall val alternativeResolvedTypeRef =
originalTypeRef.delegatedTypeRef?.transformSingle(this, data) ?: return annotationCall
val coneTypeFromCompilerRequiredPhase = originalTypeRef.coneType val coneTypeFromCompilerRequiredPhase = originalTypeRef.coneType
val coneTypeFromTypesPhase = alternativeResolvedTypeRef.coneType val coneTypeFromTypesPhase = alternativeResolvedTypeRef.coneType
if (coneTypeFromTypesPhase != coneTypeFromCompilerRequiredPhase) { if (coneTypeFromTypesPhase != coneTypeFromCompilerRequiredPhase) {
@@ -47,7 +47,9 @@ import org.jetbrains.kotlin.fir.visitors.FirTransformer
import org.jetbrains.kotlin.fir.visitors.transformSingle import org.jetbrains.kotlin.fir.visitors.transformSingle
import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.name.Name
open class FirDeclarationsResolveTransformer(transformer: FirAbstractBodyResolveTransformerDispatcher) : FirPartialBodyResolveTransformer(transformer) { open class FirDeclarationsResolveTransformer(
transformer: FirAbstractBodyResolveTransformerDispatcher
) : FirPartialBodyResolveTransformer(transformer) {
private val statusResolver: FirStatusResolver = FirStatusResolver(session, scopeSession) private val statusResolver: FirStatusResolver = FirStatusResolver(session, scopeSession)
private fun FirDeclaration.visibilityForApproximation(): Visibility { private fun FirDeclaration.visibilityForApproximation(): Visibility {
@@ -493,7 +495,10 @@ open class FirDeclarationsResolveTransformer(transformer: FirAbstractBodyResolve
) )
} }
override fun transformRegularClass(regularClass: FirRegularClass, data: ResolutionMode): FirStatement = whileAnalysing(session, regularClass) { override fun transformRegularClass(
regularClass: FirRegularClass,
data: ResolutionMode
): FirStatement = whileAnalysing(session, regularClass) {
return context.withContainingClass(regularClass) { return context.withContainingClass(regularClass) {
if (regularClass.isLocal && regularClass !in context.targetedLocalClasses) { if (regularClass.isLocal && regularClass !in context.targetedLocalClasses) {
return regularClass.runAllPhasesForLocalClass(transformer, components, data, transformer.firTowerDataContextCollector) return regularClass.runAllPhasesForLocalClass(transformer, components, data, transformer.firTowerDataContextCollector)
@@ -628,7 +633,6 @@ open class FirDeclarationsResolveTransformer(transformer: FirAbstractBodyResolve
if (functionIsNotAnalyzed) { if (functionIsNotAnalyzed) {
dataFlowAnalyzer.enterFunction(function) dataFlowAnalyzer.enterFunction(function)
} }
@Suppress("UNCHECKED_CAST")
return transformDeclarationContent(function, data).also { return transformDeclarationContent(function, data).also {
if (functionIsNotAnalyzed) { if (functionIsNotAnalyzed) {
val result = it as FirFunction val result = it as FirFunction
@@ -638,16 +642,17 @@ open class FirDeclarationsResolveTransformer(transformer: FirAbstractBodyResolve
} as FirStatement } as FirStatement
} }
override fun transformConstructor(constructor: FirConstructor, data: ResolutionMode): FirConstructor = whileAnalysing(session, constructor) { override fun transformConstructor(
constructor: FirConstructor,
data: ResolutionMode
): FirConstructor = whileAnalysing(session, constructor) {
if (implicitTypeOnly) return constructor if (implicitTypeOnly) return constructor
val container = context.containerIfAny as? FirRegularClass val container = context.containerIfAny as? FirRegularClass
if (constructor.isPrimary && container?.classKind == ClassKind.ANNOTATION_CLASS) { if (constructor.isPrimary && container?.classKind == ClassKind.ANNOTATION_CLASS) {
return withFirArrayOfCallTransformer { return withFirArrayOfCallTransformer {
@Suppress("UNCHECKED_CAST")
doTransformConstructor(constructor, data) doTransformConstructor(constructor, data)
} }
} }
@Suppress("UNCHECKED_CAST")
return doTransformConstructor(constructor, data) return doTransformConstructor(constructor, data)
} }
@@ -996,7 +1001,10 @@ open class FirDeclarationsResolveTransformer(transformer: FirAbstractBodyResolve
return element return element
} }
override fun transformValueParameter(valueParameter: FirValueParameter, data: Any?): FirStatement = whileAnalysing(valueParameter.moduleData.session, valueParameter) { override fun transformValueParameter(
valueParameter: FirValueParameter,
data: Any?
): FirStatement = whileAnalysing(valueParameter.moduleData.session, valueParameter) {
if (valueParameter.returnTypeRef is FirImplicitTypeRef) { if (valueParameter.returnTypeRef is FirImplicitTypeRef) {
valueParameter.replaceReturnTypeRef( valueParameter.replaceReturnTypeRef(
valueParameter.returnTypeRef.resolvedTypeFromPrototype( valueParameter.returnTypeRef.resolvedTypeFromPrototype(