[FIR] Pass all FirFiles to FirGlobalResolveProcessor.process

This commit is contained in:
Dmitriy Novozhilov
2021-02-04 11:38:12 +03:00
parent 38437fb036
commit c8f9cc33ef
6 changed files with 10 additions and 10 deletions
@@ -16,7 +16,7 @@ annotation class AdapterForResolveProcessor
sealed class FirResolveProcessor(val session: FirSession, val scopeSession: ScopeSession)
abstract class FirGlobalResolveProcessor(session: FirSession, scopeSession: ScopeSession) : FirResolveProcessor(session, scopeSession) {
abstract fun process()
abstract fun process(files: Collection<FirFile>)
}
abstract class FirTransformerBasedResolveProcessor(
@@ -28,4 +28,4 @@ abstract class FirTransformerBasedResolveProcessor(
fun processFile(file: FirFile) {
file.transform<FirFile, Nothing?>(transformer, null)
}
}
}
@@ -24,7 +24,7 @@ class FirTotalResolveProcessor(session: FirSession) {
}
}
is FirGlobalResolveProcessor -> {
processor.process()
processor.process(files)
}
}
}
@@ -20,7 +20,7 @@ class FirGlobalClassGenerationProcessor(
session: FirSession,
scopeSession: ScopeSession
) : FirGlobalResolveProcessor(session, scopeSession) {
override fun process() {
override fun process(files: Collection<FirFile>) {
val extensions = session.extensionService.declarationGenerators
if (extensions.isEmpty()) return
val provider = session.predicateBasedProvider
@@ -24,7 +24,7 @@ class FirGlobalExtensionStatusProcessor(
session: FirSession,
scopeSession: ScopeSession
) : FirGlobalResolveProcessor(session, scopeSession) {
override fun process() {
override fun process(files: Collection<FirFile>) {
val extensions = session.extensionService.statusTransformerExtensions
if (extensions.isEmpty()) return
val provider = session.predicateBasedProvider
@@ -26,7 +26,7 @@ class FirGlobalNewMemberGenerationProcessor(
private val index = session.generatedClassIndex
private val provider = session.predicateBasedProvider
override fun process() {
override fun process(files: Collection<FirFile>) {
val extensions = session.extensionService.declarationGenerators
if (extensions.isEmpty()) return
for (extension in extensions) {
@@ -64,4 +64,4 @@ class FirGlobalNewMemberGenerationProcessor(
}
}
}
}
}
@@ -159,7 +159,7 @@ class FirResolveBench(val withProgress: Boolean) {
private fun runStage(processor: FirResolveProcessor, firFileSequence: Sequence<FirFile>) {
when (processor) {
is FirTransformerBasedResolveProcessor -> runStage(processor, firFileSequence)
is FirGlobalResolveProcessor -> runStage(processor)
is FirGlobalResolveProcessor -> runStage(processor, firFileSequence.toList())
}
}
@@ -182,10 +182,10 @@ class FirResolveBench(val withProgress: Boolean) {
}
}
private fun runStage(processor: FirGlobalResolveProcessor) {
private fun runStage(processor: FirGlobalResolveProcessor, firFiles: List<FirFile>) {
processWithTimeMeasure(
processor::class,
{ processor.process() }
{ processor.process(firFiles) }
) { e ->
val message = "Fail on stage ${processor::class}"
println(message)