[kpm] Implement generic 'kotlin.debug' extra
^KT-52568 In Progress
This commit is contained in:
committed by
Space
parent
da288d926b
commit
01a4045c04
+6
@@ -8,6 +8,7 @@
|
|||||||
package org.jetbrains.kotlin.gradle.kpm.idea
|
package org.jetbrains.kotlin.gradle.kpm.idea
|
||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.kpm.external.ExternalVariantApi
|
import org.jetbrains.kotlin.gradle.kpm.external.ExternalVariantApi
|
||||||
|
import org.jetbrains.kotlin.gradle.kpm.idea.serialize.IdeaKpmExtrasSerializer
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmFragmentGranularMetadataResolverFactory
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmFragmentGranularMetadataResolverFactory
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinPm20ProjectExtension
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinPm20ProjectExtension
|
||||||
import org.jetbrains.kotlin.tooling.core.UnsafeApi
|
import org.jetbrains.kotlin.tooling.core.UnsafeApi
|
||||||
@@ -95,4 +96,9 @@ internal fun IdeaKpmProjectModelBuilder.Companion.default(
|
|||||||
effect = IdeaKpmMissingFileDependencyLogger,
|
effect = IdeaKpmMissingFileDependencyLogger,
|
||||||
constraint = IdeaKpmProjectModelBuilder.FragmentConstraint.unconstrained
|
constraint = IdeaKpmProjectModelBuilder.FragmentConstraint.unconstrained
|
||||||
)
|
)
|
||||||
|
|
||||||
|
registerExtrasSerializationExtension {
|
||||||
|
/* For transporting debugging breadcrumbs into the ide */
|
||||||
|
register(kotlinDebugKey, IdeaKpmExtrasSerializer.javaIoSerializable())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+21
@@ -0,0 +1,21 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||||
|
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.gradle.kpm.idea
|
||||||
|
|
||||||
|
import org.jetbrains.kotlin.tooling.core.Extras
|
||||||
|
import org.jetbrains.kotlin.tooling.core.MutableExtras
|
||||||
|
import org.jetbrains.kotlin.tooling.core.extrasKeyOf
|
||||||
|
|
||||||
|
internal val kotlinDebugKey = extrasKeyOf<Any>("kotlin.debug")
|
||||||
|
|
||||||
|
val Extras.kotlinDebug get() = this[kotlinDebugKey]
|
||||||
|
|
||||||
|
var MutableExtras.kotlinDebug: Any?
|
||||||
|
get() = this[kotlinDebugKey]
|
||||||
|
set(value) {
|
||||||
|
if (value != null) this[kotlinDebugKey] = value
|
||||||
|
else this.remove(kotlinDebugKey)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user