[kpm] Introduce Kpm* naming convention (1/2)

All Kpm owned entities shall be disambiguated by using the `Kpm` prefix
E.g. MyEntity has to be called KpmMyEntity and a subclass is called
KpmSpecialMyEntity
This commit is contained in:
sebastian.sellmair
2022-05-24 12:00:07 +02:00
committed by Space
parent 49175f83aa
commit 71677ad455
127 changed files with 1095 additions and 1094 deletions
@@ -39,7 +39,7 @@ interface KotlinCompilationData<T : KotlinCommonOptions> {
}
interface KotlinVariantCompilationData<T : KotlinCommonOptions> : KotlinCompilationData<T> {
override val owner: KotlinGradleVariant
override val owner: KpmGradleVariant
override val project: Project get() = owner.containingModule.project
@@ -68,4 +68,4 @@ interface KotlinVariantCompilationData<T : KotlinCommonOptions> : KotlinCompilat
get() = owner.platformType
override val ownModuleName: String
}
}
@@ -12,16 +12,16 @@ import org.gradle.api.Project
import org.gradle.api.file.SourceDirectorySet
import org.jetbrains.kotlin.gradle.plugin.HasKotlinDependencies
import org.jetbrains.kotlin.gradle.plugin.LanguageSettingsBuilder
import org.jetbrains.kotlin.project.model.KotlinModuleFragment
import org.jetbrains.kotlin.project.model.KpmFragment
import org.jetbrains.kotlin.project.model.utils.variantsContainingFragment
import org.jetbrains.kotlin.tooling.core.MutableExtras
import org.jetbrains.kotlin.tooling.core.closure
import org.jetbrains.kotlin.tooling.core.withClosure
interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, KotlinFragmentDependencyConfigurations, Named {
interface KpmGradleFragment : KpmFragment, HasKotlinDependencies, KotlinFragmentDependencyConfigurations, Named {
override val kotlinSourceRoots: SourceDirectorySet
override val containingModule: KotlinGradleModule
override val containingModule: KpmGradleModule
override fun getName(): String = fragmentName
@@ -32,11 +32,17 @@ interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, Ko
val extras: MutableExtras
fun refines(other: KotlinGradleFragment)
fun refines(other: KpmGradleFragment)
fun refines(other: NamedDomainObjectProvider<KotlinGradleFragment>)
fun refines(other: NamedDomainObjectProvider<KpmGradleFragment>)
override val directRefinesDependencies: Iterable<KotlinGradleFragment>
override val declaredRefinesDependencies: Iterable<KpmGradleFragment>
override val refinesClosure: Set<KpmGradleFragment>
get() = this.closure { it.declaredRefinesDependencies }
override val withRefinesClosure: Set<KpmGradleFragment>
get() = this.withClosure { it.declaredRefinesDependencies }
override fun dependencies(configureClosure: Closure<Any?>) =
dependencies f@{ project.configure(this@f, configureClosure) }
@@ -63,14 +69,8 @@ interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, Ko
listOf(transitiveApiConfiguration.name, transitiveImplementationConfiguration.name)
}
val KotlinGradleFragment.withRefinesClosure: Set<KotlinGradleFragment>
get() = this.withClosure { it.directRefinesDependencies }
val KotlinGradleFragment.refinesClosure: Set<KotlinGradleFragment>
get() = this.closure { it.directRefinesDependencies }
val KotlinGradleFragment.path: String
val KpmGradleFragment.path: String
get() = "${project.path}/${containingModule.name}/$fragmentName"
val KotlinGradleFragment.containingVariants: Set<KotlinGradleVariant>
get() = containingModule.variantsContainingFragment(this).map { it as KotlinGradleVariant }.toSet()
val KpmGradleFragment.containingVariants: Set<KpmGradleVariant>
get() = containingModule.variantsContainingFragment(this).map { it as KpmGradleVariant }.toSet()
@@ -12,18 +12,18 @@ import org.gradle.api.NamedDomainObjectSet
import org.gradle.api.Project
import org.jetbrains.kotlin.gradle.plugin.HasKotlinDependencies
import org.jetbrains.kotlin.gradle.plugin.KotlinDependencyHandler
import org.jetbrains.kotlin.project.model.KotlinModule
import org.jetbrains.kotlin.project.model.KotlinModuleIdentifier
import org.jetbrains.kotlin.project.model.KpmModule
import org.jetbrains.kotlin.project.model.KpmModuleIdentifier
import org.jetbrains.kotlin.project.model.KpmCompilerPlugin
interface KotlinGradleModule : KotlinModule, Named, HasKotlinDependencies {
interface KpmGradleModule : KpmModule, Named, HasKotlinDependencies {
val project: Project
val moduleClassifier: String?
override val fragments: ExtensiblePolymorphicDomainObjectContainer<KotlinGradleFragment>
override val fragments: ExtensiblePolymorphicDomainObjectContainer<KpmGradleFragment>
// TODO DSL & build script model: find a way to create a flexible typed view on fragments?
override val variants: NamedDomainObjectSet<KotlinGradleVariant>
override val variants: NamedDomainObjectSet<KpmGradleVariant>
override val plugins: Set<KpmCompilerPlugin>
@@ -34,7 +34,7 @@ interface KotlinGradleModule : KotlinModule, Named, HasKotlinDependencies {
fun makePublic()
companion object {
val KotlinModuleIdentifier.moduleName get() = moduleClassifier ?: MAIN_MODULE_NAME
val KpmModuleIdentifier.moduleName get() = moduleClassifier ?: MAIN_MODULE_NAME
const val MAIN_MODULE_NAME = "main"
const val TEST_MODULE_NAME = "test"
@@ -47,10 +47,10 @@ interface KotlinGradleModule : KotlinModule, Named, HasKotlinDependencies {
// DSL
val common: KotlinGradleFragment
get() = fragments.getByName(KotlinGradleFragment.COMMON_FRAGMENT_NAME)
val common: KpmGradleFragment
get() = fragments.getByName(KpmGradleFragment.COMMON_FRAGMENT_NAME)
fun common(configure: KotlinGradleFragment.() -> Unit) =
fun common(configure: KpmGradleFragment.() -> Unit) =
common.configure()
override fun dependencies(configure: KotlinDependencyHandler.() -> Unit) =
@@ -11,9 +11,9 @@ import org.gradle.api.file.FileCollection
import org.gradle.api.publish.maven.MavenPublication
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationOutput
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.project.model.KotlinModuleVariant
import org.jetbrains.kotlin.project.model.KpmVariant
interface KotlinGradleVariant : KotlinGradleFragment, KotlinModuleVariant {
interface KpmGradleVariant : KpmGradleFragment, KpmVariant {
val platformType: KotlinPlatformType
// TODO generalize with KotlinCompilation?
@@ -33,7 +33,7 @@ interface KotlinGradleVariant : KotlinGradleFragment, KotlinModuleVariant {
val gradleVariantNames: Set<String>
}
interface KotlinGradleVariantWithRuntime : KotlinGradleVariant {
interface KpmGradleVariantWithRuntime : KpmGradleVariant {
// TODO deduplicate with KotlinCompilation?
val runtimeDependenciesConfiguration: Configuration
@@ -45,7 +45,7 @@ interface KotlinGradleVariantWithRuntime : KotlinGradleVariant {
val runtimeElementsConfiguration: Configuration
}
interface KotlinNativeVariant : KotlinGradleVariant {
interface KpmNativeVariant : KpmGradleVariant {
override val platformType: KotlinPlatformType
get() = KotlinPlatformType.native