[FIR IDE] LowLevel api refactoring
This commit is contained in:
committed by
TeamCityServer
parent
445f13d1bf
commit
633e03b710
+3
-3
@@ -43,7 +43,7 @@ class FirSupertypeResolverProcessor(session: FirSession, scopeSession: ScopeSess
|
||||
/**
|
||||
* Interceptor needed by IDE to resolve in-air created declarations.
|
||||
*/
|
||||
interface FirProviderInterceptorForSupertypeResolver {
|
||||
interface FirProviderInterceptor {
|
||||
fun getFirClassifierContainerFileIfAny(symbol: FirClassLikeSymbol<*>): FirFile?
|
||||
fun getFirClassifierByFqName(classId: ClassId): FirClassLikeDeclaration<*>?
|
||||
}
|
||||
@@ -74,7 +74,7 @@ fun <F : FirClassLikeDeclaration<F>> F.runSupertypeResolvePhaseForLocalClass(
|
||||
scopeSession: ScopeSession,
|
||||
currentScopeList: List<FirScope>,
|
||||
localClassesNavigationInfo: LocalClassesNavigationInfo,
|
||||
firProviderInterceptor: FirProviderInterceptorForSupertypeResolver?,
|
||||
firProviderInterceptor: FirProviderInterceptor?,
|
||||
): F {
|
||||
val supertypeComputationSession = SupertypeComputationSession()
|
||||
val supertypeResolverVisitor = FirSupertypeResolverVisitor(
|
||||
@@ -189,7 +189,7 @@ class FirSupertypeResolverVisitor(
|
||||
private val scopeSession: ScopeSession,
|
||||
private val scopeForLocalClass: PersistentList<FirScope>? = null,
|
||||
private val localClassesNavigationInfo: LocalClassesNavigationInfo? = null,
|
||||
private val firProviderInterceptor: FirProviderInterceptorForSupertypeResolver? = null,
|
||||
private val firProviderInterceptor: FirProviderInterceptor? = null,
|
||||
) : FirDefaultVisitor<Unit, Any?>() {
|
||||
private val supertypeGenerationExtensions = session.extensionService.supertypeGenerators
|
||||
|
||||
|
||||
+2
-2
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.fir.resolve.ResolutionMode
|
||||
import org.jetbrains.kotlin.fir.resolve.ScopeSession
|
||||
import org.jetbrains.kotlin.fir.resolve.calls.ResolutionContext
|
||||
import org.jetbrains.kotlin.fir.resolve.dfa.DataFlowAnalyzerContext
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.FirProviderInterceptorForSupertypeResolver
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.FirProviderInterceptor
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.ReturnTypeCalculator
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.ReturnTypeCalculatorForFullBodyResolve
|
||||
import org.jetbrains.kotlin.fir.scopes.FirCompositeScope
|
||||
@@ -33,7 +33,7 @@ open class FirBodyResolveTransformer(
|
||||
val returnTypeCalculator: ReturnTypeCalculator = ReturnTypeCalculatorForFullBodyResolve(),
|
||||
outerBodyResolveContext: BodyResolveContext? = null,
|
||||
val firTowerDataContextCollector: FirTowerDataContextCollector? = null,
|
||||
val firProviderInterceptor: FirProviderInterceptorForSupertypeResolver? = null,
|
||||
val firProviderInterceptor: FirProviderInterceptor? = null,
|
||||
) : FirAbstractBodyResolveTransformer(phase) {
|
||||
|
||||
final override val context: BodyResolveContext =
|
||||
|
||||
+2
-2
@@ -9,7 +9,7 @@ import org.jetbrains.kotlin.fir.declarations.FirClassLikeDeclaration
|
||||
import org.jetbrains.kotlin.fir.declarations.FirRegularClass
|
||||
import org.jetbrains.kotlin.fir.declarations.FirResolvePhase
|
||||
import org.jetbrains.kotlin.fir.resolve.ResolutionMode
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.FirProviderInterceptorForSupertypeResolver
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.FirProviderInterceptor
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.runStatusResolveForLocalClass
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.runSupertypeResolvePhaseForLocalClass
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.runTypeResolvePhaseForLocalClass
|
||||
@@ -20,7 +20,7 @@ fun <F : FirClassLikeDeclaration<F>> F.runAllPhasesForLocalClass(
|
||||
components: FirAbstractBodyResolveTransformer.BodyResolveTransformerComponents,
|
||||
resolutionMode: ResolutionMode,
|
||||
firTowerDataContextCollector: FirTowerDataContextCollector?,
|
||||
firProviderInterceptor: FirProviderInterceptorForSupertypeResolver?,
|
||||
firProviderInterceptor: FirProviderInterceptor?,
|
||||
): F {
|
||||
if (this.resolvePhase > FirResolvePhase.RAW_FIR) return this
|
||||
if (this is FirRegularClass) {
|
||||
|
||||
Reference in New Issue
Block a user