diff --git a/annotation/src/main/kotlin/io/spine/tools/core/jvm/annotation/PatternAnnotator.kt b/annotation/src/main/kotlin/io/spine/tools/core/jvm/annotation/PatternAnnotator.kt index fdb198302..622a2030a 100644 --- a/annotation/src/main/kotlin/io/spine/tools/core/jvm/annotation/PatternAnnotator.kt +++ b/annotation/src/main/kotlin/io/spine/tools/core/jvm/annotation/PatternAnnotator.kt @@ -62,5 +62,8 @@ internal abstract class PatternAnnotator : Annotator() { patterns.any { it.matches(codeElement) } } -internal fun SourceFile.qualifiedTopClassName(): String - = relativePath.toString().replace(File.separator, ".").replace(".java", "") +/** + * Obtains the fully qualified name of the top-level class defined in this file. + */ +internal fun SourceFile.qualifiedTopClassName(): String = + relativePath.toString().replace(File.separator, ".").replace(".java", "") diff --git a/buildSrc/src/main/kotlin/DokkaExts.kt b/buildSrc/src/main/kotlin/DokkaExts.kt index b141a228a..778869108 100644 --- a/buildSrc/src/main/kotlin/DokkaExts.kt +++ b/buildSrc/src/main/kotlin/DokkaExts.kt @@ -68,11 +68,17 @@ fun DependencyHandlerScope.useDokkaWithSpineExtensions() { private fun DependencyHandler.dokkaPlugin(dependencyNotation: Any): Dependency? = add("dokkaPlugin", dependencyNotation) +/** + * Resolves the directory where Dokka outputs HTML documentation for the given language. + */ internal fun Project.dokkaOutput(language: String): File { val lng = language.titleCaseFirstChar() return layout.buildDirectory.dir("docs/dokka$lng").get().asFile } +/** + * Locates a Dokka configuration file under the `buildSrc` resources. + */ fun Project.dokkaConfigFile(file: String): File { val dokkaConfDir = project.rootDir.resolve("buildSrc/src/main/resources/dokka") return dokkaConfDir.resolve(file) diff --git a/ksp/src/main/kotlin/io/spine/tools/core/jvm/ksp/gradle/KspGradlePlugin.kt b/ksp/src/main/kotlin/io/spine/tools/core/jvm/ksp/gradle/KspGradlePlugin.kt index b97b241a9..4f07cb99e 100644 --- a/ksp/src/main/kotlin/io/spine/tools/core/jvm/ksp/gradle/KspGradlePlugin.kt +++ b/ksp/src/main/kotlin/io/spine/tools/core/jvm/ksp/gradle/KspGradlePlugin.kt @@ -42,6 +42,9 @@ public object KspGradlePlugin { */ public const val id: String = "com.google.devtools.ksp" + /** + * Returns the path to the directory where KSP generates sources for the given [project]. + */ public fun defaultTargetDirectory(project: Project): Path { val generatedDir = project.layout.buildDirectory.dir("generated") return generatedDir.get().asFile.toPath() diff --git a/version.gradle.kts b/version.gradle.kts index 3855ab206..4b6ff7039 100644 --- a/version.gradle.kts +++ b/version.gradle.kts @@ -29,5 +29,5 @@ * * Do not rename this property, as it is also used in the integration tests via its name. */ -val coreJvmCompilerVersion by extra("2.0.0-SNAPSHOT.004") +val coreJvmCompilerVersion by extra("2.0.0-SNAPSHOT.005") val versionToPublish by extra(coreJvmCompilerVersion)