[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:
committed by
Space
parent
49175f83aa
commit
71677ad455
+2
-2
@@ -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
|
||||
}
|
||||
}
|
||||
|
||||
+15
-15
@@ -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()
|
||||
|
||||
+9
-9
@@ -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) =
|
||||
|
||||
+4
-4
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user