[KPM] Implement initial IdeaKotlinProjectModelBuilder

- Introduce `kotlin-gradle-plugin-idea` module that allows
to share models between the IDE and KGP

- Add `kotlin-gradle-plugin-idea` to the RuntimePublicAPITest to
ensure binary compatibility

^KT-51262
This commit is contained in:
sebastian.sellmair
2022-02-11 15:54:26 +01:00
committed by Space
parent faf0cbea5d
commit e91785ba39
29 changed files with 353 additions and 7 deletions
@@ -40,7 +40,7 @@ interface ExperimentalExtensionConfig {
/**
* Different modes that can be used to set the level of issue reporting for [KotlinTopLevelExtensionConfig.explicitApi] option.
*/
enum class ExplicitApiMode(private val cliOption: String) {
enum class ExplicitApiMode(val cliOption: String) {
/** Report issues as errors. */
Strict("strict"),
@@ -31,6 +31,8 @@ interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, Ko
fun refines(other: NamedDomainObjectProvider<KotlinGradleFragment>)
override val directRefinesDependencies: Iterable<KotlinGradleFragment>
override fun dependencies(configureClosure: Closure<Any?>) =
dependencies f@{ project.configure(this@f, configureClosure) }