KT-MR-5666 Make CompilationDetails.directlyIncludedSourceSets read-only
This commit is contained in:
+3
-4
@@ -54,7 +54,7 @@ interface CompilationDetails<T : KotlinCommonOptions> {
|
||||
|
||||
fun source(sourceSet: KotlinSourceSet)
|
||||
|
||||
val directlyIncludedKotlinSourceSets: MutableSet<KotlinSourceSet>
|
||||
val directlyIncludedKotlinSourceSets: Set<KotlinSourceSet>
|
||||
val defaultSourceSetName: String
|
||||
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
@@ -465,9 +465,8 @@ internal open class VariantMappedCompilationDetails<T : KotlinCommonOptions>(
|
||||
override val kotlinDependenciesHolder: HasKotlinDependencies
|
||||
get() = variant
|
||||
|
||||
override val directlyIncludedKotlinSourceSets: MutableSet<KotlinSourceSet>
|
||||
// FIXME: this effectively ignores the mutation of the set!
|
||||
get() = compilation.defaultSourceSet.dependsOn.toMutableSet()
|
||||
override val directlyIncludedKotlinSourceSets: Set<KotlinSourceSet>
|
||||
get() = compilation.defaultSourceSet.dependsOn
|
||||
}
|
||||
|
||||
internal open class VariantMappedCompilationDetailsWithRuntime<T : KotlinCommonOptions>(
|
||||
|
||||
+7
-1
@@ -86,7 +86,13 @@ abstract class AbstractKotlinCompilation<T : KotlinCommonOptions>(
|
||||
get() = compilationDetails.compileDependencyFilesHolder.dependencyFiles
|
||||
set(value) { compilationDetails.compileDependencyFilesHolder.dependencyFiles = value }
|
||||
|
||||
final override val kotlinSourceSets: MutableSet<KotlinSourceSet> get() = compilationDetails.directlyIncludedKotlinSourceSets
|
||||
final override val kotlinSourceSets: MutableSet<KotlinSourceSet> get() =
|
||||
when (val details = compilationDetails) {
|
||||
is DefaultCompilationDetails -> details.directlyIncludedKotlinSourceSets // mutable in that subtype
|
||||
// TODO deprecate mutability of this set. We shouldn't allow mutating it directly anyway;
|
||||
else -> details.directlyIncludedKotlinSourceSets.toMutableSet()
|
||||
}
|
||||
|
||||
final override val defaultSourceSetName: String get() = compilationDetails.defaultSourceSetName
|
||||
|
||||
final override val compilationName: String get() = compilationDetails.compilationData.compilationPurpose
|
||||
|
||||
Reference in New Issue
Block a user