diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/ResolvePhaseUtils.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/ResolvePhaseUtils.kt index e7c9f01aab7..e666d1f2cc8 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/ResolvePhaseUtils.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/ResolvePhaseUtils.kt @@ -8,7 +8,7 @@ package org.jetbrains.kotlin.fir.resolve.transformers import org.jetbrains.kotlin.fir.declarations.FirResolvePhase import org.jetbrains.kotlin.fir.declarations.FirResolvePhase.* import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter -import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirImplicitTypeBodyResolveTransformerAdapter2 +import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirImplicitTypeBodyResolveTransformerAdapter import org.jetbrains.kotlin.fir.visitors.FirTransformer // TODO: add FirSession parameter @@ -20,7 +20,7 @@ fun FirResolvePhase.createTransformerByPhase(): FirTransformer { SEALED_CLASS_INHERITORS -> FirSealedClassInheritorsTransformer() TYPES -> FirTypeResolveTransformer() STATUS -> FirStatusResolveTransformer() - IMPLICIT_TYPES_BODY_RESOLVE -> FirImplicitTypeBodyResolveTransformerAdapter2() + IMPLICIT_TYPES_BODY_RESOLVE -> FirImplicitTypeBodyResolveTransformerAdapter() BODY_RESOLVE -> FirBodyResolveTransformerAdapter() } } diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirImplicitBodyResolve.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirImplicitBodyResolve.kt index e1dc3703c01..91b6add50a8 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirImplicitBodyResolve.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirImplicitBodyResolve.kt @@ -29,7 +29,7 @@ import org.jetbrains.kotlin.fir.visitors.FirTransformer import org.jetbrains.kotlin.fir.visitors.compose @Deprecated("It is temp", level = DeprecationLevel.WARNING, replaceWith = ReplaceWith("TODO(\"что-то нормальное\")")) -class FirImplicitTypeBodyResolveTransformerAdapter2 : FirTransformer() { +class FirImplicitTypeBodyResolveTransformerAdapter : FirTransformer() { private val scopeSession = ScopeSession() private val implicitBodyResolveComputationSession = ImplicitBodyResolveComputationSession() @@ -39,8 +39,8 @@ class FirImplicitTypeBodyResolveTransformerAdapter2 : FirTransformer() override fun transformFile(file: FirFile, data: Nothing?): CompositeTransformResult { val session = file.session - scopeSession.returnTypeCalculator = MyReturnTypeCalculatorWithJump(session, scopeSession, implicitBodyResolveComputationSession) - val transformer = MyFirBodyResolveTransformer( + scopeSession.returnTypeCalculator = ReturnTypeCalculatorWithJump(session, scopeSession, implicitBodyResolveComputationSession) + val transformer = FirImplicitBodyResolveTransformer( session, scopeSession, implicitBodyResolveComputationSession @@ -84,7 +84,7 @@ private class FirApplyInferredDeclarationTypesTransformer( } } -private open class MyFirBodyResolveTransformer( +private open class FirImplicitBodyResolveTransformer( session: FirSession, scopeSession: ScopeSession, private val implicitBodyResolveComputationSession: ImplicitBodyResolveComputationSession @@ -93,7 +93,7 @@ private open class MyFirBodyResolveTransformer( phase = FirResolvePhase.IMPLICIT_TYPES_BODY_RESOLVE, implicitTypeOnly = true, scopeSession = scopeSession, - returnTypeCalculator = MyReturnTypeCalculatorWithJump(session, scopeSession, implicitBodyResolveComputationSession) + returnTypeCalculator = ReturnTypeCalculatorWithJump(session, scopeSession, implicitBodyResolveComputationSession) ) { override fun transformSimpleFunction( simpleFunction: FirSimpleFunction, @@ -139,7 +139,7 @@ private open class MyFirBodyResolveTransformer( } } -private class MyReturnTypeCalculatorWithJump( +private class ReturnTypeCalculatorWithJump( private val session: FirSession, private val scopeSession: ScopeSession, private val implicitBodyResolveComputationSession: ImplicitBodyResolveComputationSession @@ -192,7 +192,7 @@ private class MyReturnTypeCalculatorWithJump( ) } val designation = (listOf(file) + outerClasses.filterNotNull().asReversed() + listOf(declaration)) - val transformer = MyFirDesignatedBodyResolveTransformer( + val transformer = FirDesignatedBodyResolveTransformerForReturnTypeCalculator( designation.iterator(), file.session, scopeSession, @@ -210,12 +210,12 @@ private class MyReturnTypeCalculatorWithJump( } } -private class MyFirDesignatedBodyResolveTransformer( +private class FirDesignatedBodyResolveTransformerForReturnTypeCalculator( private val designation: Iterator, session: FirSession, scopeSession: ScopeSession, implicitBodyResolveComputationSession: ImplicitBodyResolveComputationSession -) : MyFirBodyResolveTransformer( +) : FirImplicitBodyResolveTransformer( session, scopeSession, implicitBodyResolveComputationSession diff --git a/compiler/fir/resolve/testData/resolve/expresssions/localImplicitBodies.txt b/compiler/fir/resolve/testData/resolve/expresssions/localImplicitBodies.txt index 97c8d425e9a..93063ad51f6 100644 --- a/compiler/fir/resolve/testData/resolve/expresssions/localImplicitBodies.txt +++ b/compiler/fir/resolve/testData/resolve/expresssions/localImplicitBodies.txt @@ -5,7 +5,10 @@ FILE: localImplicitBodies.kt super() } - public final fun sss(): { + public final fun sss(): { + ^abc IntegerLiteral(1) +} +> { ^sss R?C|/anonymous.abc|() } @@ -15,5 +18,8 @@ FILE: localImplicitBodies.kt } - lval g: = R|/x|.R?C|/anonymous.sss|() + lval g: { + ^abc IntegerLiteral(1) +} +> = R|/x|.R?C|/anonymous.sss|() }