Remove Target parameter from GeneratedFile
This commit is contained in:
+9
-18
@@ -29,9 +29,7 @@ import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
|
||||
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
|
||||
import org.jetbrains.kotlin.cli.common.messages.OutputMessageUtil
|
||||
import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
||||
import org.jetbrains.kotlin.compilerRunner.ArgumentUtils
|
||||
import org.jetbrains.kotlin.compilerRunner.OutputItemsCollector
|
||||
import org.jetbrains.kotlin.compilerRunner.OutputItemsCollectorImpl
|
||||
import org.jetbrains.kotlin.compilerRunner.*
|
||||
import org.jetbrains.kotlin.config.IncrementalCompilation
|
||||
import org.jetbrains.kotlin.incremental.components.LookupTracker
|
||||
import org.jetbrains.kotlin.incremental.multiproject.ArtifactChangesProvider
|
||||
@@ -180,16 +178,16 @@ abstract class IncrementalCompilerRunner<
|
||||
protected open fun markOutputDirty(caches: CacheManager, dirtySources: List<File>) {
|
||||
}
|
||||
|
||||
protected abstract fun compareAndUpdateCache(caches: CacheManager, generatedFiles: List<GeneratedFile<*>>): CompilationResult
|
||||
protected abstract fun compareAndUpdateCache(caches: CacheManager, generatedFiles: List<GeneratedFile>): CompilationResult
|
||||
|
||||
protected open fun preBuildHook(args: Args, compilationMode: CompilationMode) {}
|
||||
protected open fun postCompilationHook(exitCode: ExitCode) {}
|
||||
protected open fun additionalDirtyFiles(caches: CacheManager, generatedFiles: List<GeneratedFile<*>>): Iterable<File> =
|
||||
protected open fun additionalDirtyFiles(caches: CacheManager, generatedFiles: List<GeneratedFile>): Iterable<File> =
|
||||
emptyList()
|
||||
|
||||
protected abstract fun compileIncrementally(args: Args, caches: CacheManager, allKotlinSources: List<File>, compilationMode: CompilationMode, messageCollector: MessageCollector): ExitCode
|
||||
|
||||
protected data class CompileChangedResults(val exitCode: ExitCode, val generatedFiles: List<GeneratedFile<TargetId>>)
|
||||
protected data class CompileChangedResults(val exitCode: ExitCode, val generatedFiles: List<GeneratedFile>)
|
||||
|
||||
protected sealed class CompilationMode {
|
||||
class Incremental(val dirtyFiles: Set<File>) : CompilationMode()
|
||||
@@ -334,7 +332,7 @@ class IncrementalJvmCompilerRunner(
|
||||
}
|
||||
}
|
||||
|
||||
override fun compareAndUpdateCache(caches: IncrementalJvmCachesManager, generatedFiles: List<GeneratedFile<*>>): CompilationResult =
|
||||
override fun compareAndUpdateCache(caches: IncrementalJvmCachesManager, generatedFiles: List<GeneratedFile>): CompilationResult =
|
||||
updateIncrementalCache(generatedFiles, caches.platformCache)
|
||||
|
||||
override fun compileIncrementally(
|
||||
@@ -358,7 +356,7 @@ class IncrementalJvmCompilerRunner(
|
||||
val allSourcesToCompile = HashSet<File>()
|
||||
|
||||
var exitCode = ExitCode.OK
|
||||
val allGeneratedFiles = hashSetOf<GeneratedFile<TargetId>>()
|
||||
val allGeneratedFiles = hashSetOf<GeneratedFile>()
|
||||
|
||||
while (dirtySources.any()) {
|
||||
markOutputDirty(caches, dirtySources)
|
||||
@@ -436,7 +434,7 @@ class IncrementalJvmCompilerRunner(
|
||||
|
||||
override fun additionalDirtyFiles(
|
||||
caches: IncrementalJvmCachesManager,
|
||||
generatedFiles: List<GeneratedFile<*>>
|
||||
generatedFiles: List<GeneratedFile>
|
||||
): Iterable<File> {
|
||||
val cache = caches.platformCache
|
||||
val result = HashSet<File>()
|
||||
@@ -447,7 +445,7 @@ class IncrementalJvmCompilerRunner(
|
||||
}
|
||||
|
||||
for (generatedFile in generatedFiles) {
|
||||
if (generatedFile !is GeneratedJvmClass<*>) continue
|
||||
if (generatedFile !is GeneratedJvmClass) continue
|
||||
|
||||
val outputClass = generatedFile.outputClass
|
||||
|
||||
@@ -511,14 +509,7 @@ class IncrementalJvmCompilerRunner(
|
||||
reporter.report { "compiling with classpath: ${classpath.toList().sorted().joinToString()}" }
|
||||
val compileServices = makeCompileServices(incrementalCaches, lookupTracker, compilationCanceledStatus)
|
||||
val exitCode = compiler.exec(messageCollector, compileServices, args)
|
||||
val generatedFiles = outputItemCollector.outputs.map {
|
||||
val outputItem = it.outputFile
|
||||
val sourceFiles = it.sourceFiles
|
||||
when (outputItem.extension) {
|
||||
"class" -> GeneratedJvmClass(targetId, sourceFiles, outputItem)
|
||||
else -> GeneratedFile(targetId, sourceFiles, outputItem)
|
||||
}
|
||||
}
|
||||
val generatedFiles = outputItemCollector.outputs.map(SimpleOutputItem::toGeneratedFile)
|
||||
reporter.reportCompileIteration(sourcesToCompile, exitCode)
|
||||
return CompileChangedResults(exitCode, generatedFiles)
|
||||
}
|
||||
|
||||
+1
-1
@@ -40,7 +40,7 @@ class InputsCache(
|
||||
|
||||
// generatedFiles can contain multiple entries with the same source file
|
||||
// for example Kapt3 IC will generate a .java stub and .class stub for each source file
|
||||
fun registerOutputForSourceFiles(generatedFiles: List<GeneratedFile<*>>) {
|
||||
fun registerOutputForSourceFiles(generatedFiles: List<GeneratedFile>) {
|
||||
val sourceToOutput = MultiMap<File, File>()
|
||||
|
||||
for (generatedFile in generatedFiles) {
|
||||
|
||||
Reference in New Issue
Block a user