diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt index 54399c116b9..c4ccecf8fc6 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt @@ -309,7 +309,7 @@ class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) { return OK } - processChanges(filesToCompile.values().toSet(), allCompiledFiles, dataManager, incrementalCaches.values, changesInfo, fsOperations) + changesInfo.processChangesUsingLookups(filesToCompile.values().toSet(), dataManager, fsOperations, incrementalCaches.values) incrementalCaches.values.forEach { it.cleanDirtyInlineFunctions() } return OK @@ -814,51 +814,6 @@ class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) { } } -private fun processChanges( - compiledFiles: Set, - allCompiledFiles: MutableSet, - dataManager: BuildDataManager, - caches: Collection, - compilationResult: CompilationResult, - fsOperations: FSOperationsHelper -) { - if (IncrementalCompilation.isExperimental()) { - compilationResult.doProcessChangesUsingLookups(compiledFiles, dataManager, fsOperations, caches) - } - else { - compilationResult.doProcessChanges(compiledFiles, allCompiledFiles, caches, fsOperations) - } -} - -private fun CompilationResult.doProcessChanges( - compiledFiles: Set, - allCompiledFiles: MutableSet, - caches: Collection, - fsOperations: FSOperationsHelper -) { - KotlinBuilder.LOG.debug("compilationResult = $this") - - when { - inlineAdded -> { - allCompiledFiles.clear() - fsOperations.markChunk(recursively = true, kotlinOnly = true, excludeFiles = compiledFiles) - return - } - constantsChanged -> { - fsOperations.markChunk(recursively = true, kotlinOnly = false, excludeFiles = allCompiledFiles) - return - } - protoChanged -> { - fsOperations.markChunk(recursively = false, kotlinOnly = true, excludeFiles = allCompiledFiles) - } - } - - if (inlineChanged) { - val files = caches.flatMap { it.getFilesToReinline() } - fsOperations.markFiles(files, excludeFiles = compiledFiles) - } -} - private class JpsICReporter : ICReporter { override fun report(message: ()->String) { if (KotlinBuilder.LOG.isDebugEnabled) { @@ -867,7 +822,7 @@ private class JpsICReporter : ICReporter { } } -private fun CompilationResult.doProcessChangesUsingLookups( +private fun CompilationResult.processChangesUsingLookups( compiledFiles: Set, dataManager: BuildDataManager, fsOperations: FSOperationsHelper,