diff --git a/libraries/tools/kotlin-gradle-plugin-api/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetHierarchyBuilder.kt b/libraries/tools/kotlin-gradle-plugin-api/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetHierarchyBuilder.kt index bec6a0612e1..180a5cd3aa5 100644 --- a/libraries/tools/kotlin-gradle-plugin-api/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetHierarchyBuilder.kt +++ b/libraries/tools/kotlin-gradle-plugin-api/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetHierarchyBuilder.kt @@ -16,6 +16,24 @@ interface KotlinTargetHierarchyBuilder { } /* Declaring groups */ + + /** + * Shortcut for `group("common") { }`: + * Most hierarchies should attach their nodes/groups to 'common' + * + * e.g. + * ``` + * common { + * group("native") { + * withIos() + * withMacos() + * } + * } + * ``` + * applying the shown hierarchy to the main compilations will create a 'nativeMain' source set which will + * depend on the usual 'commonMain' + * + */ fun common(build: KotlinTargetHierarchyBuilder.() -> Unit) = group("common", build) fun group(name: String, build: KotlinTargetHierarchyBuilder.() -> Unit = {})