Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kotlin ABI checks #919

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright © 2024 Apple Inc. and the Pkl project authors. All rights reserved.
* Copyright © 2024-2025 Apple Inc. and the Pkl project authors. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -28,6 +28,7 @@ plugins {
alias(libs.plugins.ideaExt)
alias(libs.plugins.jmh) apply false
alias(libs.plugins.nexusPublish)
alias(libs.plugins.abiCheck)
}

nexusPublishing {
Expand Down Expand Up @@ -79,3 +80,10 @@ val formattedMessage =
message.replace("\n====", "\n" + "=".repeat(message.lines().maxByOrNull { it.length }!!.length))

logger.info(formattedMessage)

apiValidation {
ignoredProjects += listOf("bench", "docs")
nonPublicMarkers += "org.pkl.commons.annotations.PklExperimental"

@OptIn(kotlinx.validation.ExperimentalBCVApi::class) klib { enabled = true }
}
Comment on lines +84 to +89
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's best to configure this plugin in the root build.gradle.kts, because then projects can be ignored by name. I've enabled experimental KLib validation since Pkl is well past the minimum of 1.9.20.

1 change: 1 addition & 0 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ plugins {
val toolchainVersion = 21

dependencies {
implementation(libs.abiCheckPlugin)
implementation(libs.downloadTaskPlugin)
implementation(libs.spotlessPlugin)
implementation(libs.kotlinPlugin) { exclude(module = "kotlin-android-extensions") }
Expand Down
3 changes: 3 additions & 0 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
[versions] # ordered alphabetically
abiCheck = "0.17.0"
antlr = "4.+"
assertj = "3.+"
checksumPlugin = "1.4.0"
Expand Down Expand Up @@ -49,6 +50,7 @@ spotlessPlugin = "6.25.0"
wiremock = "3.+"

[libraries] # ordered alphabetically
abiCheckPlugin = { group = "org.jetbrains.kotlinx.binary-compatibility-validator", name = "org.jetbrains.kotlinx.binary-compatibility-validator.gradle.plugin", version.ref = "abiCheck" }
antlr = { group = "com.tunnelvisionlabs", name = "antlr4", version.ref = "antlr" }
antlrRuntime = { group = "com.tunnelvisionlabs", name = "antlr4-runtime", version.ref = "antlr" }
assertj = { group = "org.assertj", name = "assertj-core", version.ref = "assertj" }
Expand Down Expand Up @@ -98,6 +100,7 @@ truffleRuntime = { group = "org.graalvm.truffle", name = "truffle-runtime", vers
wiremock = { group = "org.wiremock", name = "wiremock", version.ref = "wiremock" }

[plugins] # ordered alphabetically
abiCheck = { id = "org.jetbrains.kotlinx.binary-compatibility-validator" }
checksum = { id = "org.gradle.crypto.checksum", version.ref = "checksumPlugin" }
ideaExt = { id = "org.jetbrains.gradle.plugin.idea-ext", version.ref = "ideaExtPlugin" }
jmh = { id = "me.champeau.jmh", version.ref = "jmhPlugin" }
Expand Down
174 changes: 174 additions & 0 deletions pkl-cli/api/pkl-cli.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
public final class org/pkl/cli/CliEvaluator : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/cli/CliEvaluatorOptions;)V
public fun <init> (Lorg/pkl/cli/CliEvaluatorOptions;Ljava/io/Reader;)V
public fun <init> (Lorg/pkl/cli/CliEvaluatorOptions;Ljava/io/Reader;Ljava/io/Writer;)V
public synthetic fun <init> (Lorg/pkl/cli/CliEvaluatorOptions;Ljava/io/Reader;Ljava/io/Writer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun getFileOutputPaths ()Ljava/util/Map;
public final fun getOutputDirectories ()Ljava/util/Set;
public final fun getOutputFiles ()Ljava/util/Set;
}

public final class org/pkl/cli/CliEvaluatorOptions {
public static final field Companion Lorg/pkl/cli/CliEvaluatorOptions$Companion;
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
public synthetic fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun component2 ()Ljava/lang/String;
public final fun component3 ()Ljava/lang/String;
public final fun component4 ()Ljava/lang/String;
public final fun component5 ()Ljava/lang/String;
public final fun component6 ()Ljava/lang/String;
public final fun copy (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/pkl/cli/CliEvaluatorOptions;
public static synthetic fun copy$default (Lorg/pkl/cli/CliEvaluatorOptions;Lorg/pkl/commons/cli/CliBaseOptions;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Lorg/pkl/cli/CliEvaluatorOptions;
public fun equals (Ljava/lang/Object;)Z
public final fun getBase ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun getExpression ()Ljava/lang/String;
public final fun getModuleOutputSeparator ()Ljava/lang/String;
public final fun getMultipleFileOutputPath ()Ljava/lang/String;
public final fun getOutputFormat ()Ljava/lang/String;
public final fun getOutputPath ()Ljava/lang/String;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}

public final class org/pkl/cli/CliEvaluatorOptions$Companion {
public final fun getDefaults ()Lorg/pkl/cli/CliEvaluatorOptions;
}

public final class org/pkl/cli/CliImportAnalyzer : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/cli/CliImportAnalyzerOptions;)V
public fun <init> (Lorg/pkl/cli/CliImportAnalyzerOptions;Ljava/io/Writer;)V
public synthetic fun <init> (Lorg/pkl/cli/CliImportAnalyzerOptions;Ljava/io/Writer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
}

public final class org/pkl/cli/CliImportAnalyzerOptions {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;)V
public synthetic fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun component2 ()Ljava/nio/file/Path;
public final fun component3 ()Ljava/lang/String;
public final fun copy (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;)Lorg/pkl/cli/CliImportAnalyzerOptions;
public static synthetic fun copy$default (Lorg/pkl/cli/CliImportAnalyzerOptions;Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ILjava/lang/Object;)Lorg/pkl/cli/CliImportAnalyzerOptions;
public fun equals (Ljava/lang/Object;)Z
public final fun getBase ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun getOutputFormat ()Ljava/lang/String;
public final fun getOutputPath ()Ljava/nio/file/Path;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}

public final class org/pkl/cli/CliPackageDownloader : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/util/List;Z)V
}

public abstract class org/pkl/cli/CliProjectCommand : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/util/List;)V
protected final fun getNormalizedProjectFiles ()Ljava/util/List;
}

public final class org/pkl/cli/CliProjectPackager : org/pkl/cli/CliProjectCommand {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/util/List;Lorg/pkl/commons/cli/CliTestOptions;Ljava/lang/String;ZLjava/io/Writer;Ljava/io/Writer;)V
public synthetic fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/util/List;Lorg/pkl/commons/cli/CliTestOptions;Ljava/lang/String;ZLjava/io/Writer;Ljava/io/Writer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
}

public final class org/pkl/cli/CliProjectResolver : org/pkl/cli/CliProjectCommand {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/util/List;Ljava/io/Writer;Ljava/io/Writer;)V
public synthetic fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/util/List;Ljava/io/Writer;Ljava/io/Writer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
}

public final class org/pkl/cli/CliServer : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;)V
}

public final class org/pkl/cli/CliTestRunner : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Lorg/pkl/commons/cli/CliTestOptions;)V
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Lorg/pkl/commons/cli/CliTestOptions;Ljava/io/Writer;)V
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Lorg/pkl/commons/cli/CliTestOptions;Ljava/io/Writer;Ljava/io/Writer;)V
public synthetic fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Lorg/pkl/commons/cli/CliTestOptions;Ljava/io/Writer;Ljava/io/Writer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
}

public final class org/pkl/cli/commands/AnalyzeCommand : com/github/ajalt/clikt/core/NoOpCliktCommand {
public static final field Companion Lorg/pkl/cli/commands/AnalyzeCommand$Companion;
public fun <init> (Ljava/lang/String;)V
}

public final class org/pkl/cli/commands/AnalyzeCommand$Companion {
}

public final class org/pkl/cli/commands/AnalyzeCommand$Companion$AnalyzeImportsCommand : org/pkl/commons/cli/commands/ModulesCommand {
public fun <init> (Ljava/lang/String;)V
public fun run ()V
}

public final class org/pkl/cli/commands/DownloadPackageCommand : org/pkl/commons/cli/commands/BaseCommand {
public fun <init> (Ljava/lang/String;)V
public fun run ()V
}

public final class org/pkl/cli/commands/EvalCommand : org/pkl/commons/cli/commands/ModulesCommand {
public fun <init> (Ljava/lang/String;)V
public fun run ()V
}

public final class org/pkl/cli/commands/ProjectCommand : com/github/ajalt/clikt/core/NoOpCliktCommand {
public static final field Companion Lorg/pkl/cli/commands/ProjectCommand$Companion;
public fun <init> (Ljava/lang/String;)V
}

public final class org/pkl/cli/commands/ProjectCommand$Companion {
}

public final class org/pkl/cli/commands/ProjectCommand$Companion$PackageCommand : org/pkl/commons/cli/commands/BaseCommand {
public fun <init> (Ljava/lang/String;)V
public fun run ()V
}

public final class org/pkl/cli/commands/ProjectCommand$Companion$ResolveCommand : org/pkl/commons/cli/commands/BaseCommand {
public fun <init> (Ljava/lang/String;)V
public fun run ()V
}

public final class org/pkl/cli/commands/ReplCommand : org/pkl/commons/cli/commands/BaseCommand {
public fun <init> (Ljava/lang/String;)V
public fun run ()V
}

public final class org/pkl/cli/commands/RootCommand : com/github/ajalt/clikt/core/NoOpCliktCommand {
public fun <init> (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
}

public final class org/pkl/cli/commands/ServerCommand : com/github/ajalt/clikt/core/CliktCommand {
public fun <init> (Ljava/lang/String;)V
public fun run ()V
}

public final class org/pkl/cli/commands/TestCommand : org/pkl/commons/cli/commands/BaseCommand {
public fun <init> (Ljava/lang/String;)V
public final fun getModules ()Ljava/util/List;
public fun run ()V
}

public final class org/pkl/cli/svm/InitFeature : org/graalvm/nativeimage/hosted/Feature {
public fun <init> ()V
public fun duringSetup (Lorg/graalvm/nativeimage/hosted/Feature$DuringSetupAccess;)V
}

public final class org/pkl/cli/svm/PolyglotContextImplTarget {
public field cachedThreadInfo Lorg/pkl/cli/svm/PolyglotThreadInfoTarget;
public field singleThreadValue Lorg/pkl/cli/svm/WeakAssumedValueTarget;
public field threads Ljava/util/Map;
public fun <init> ()V
}

public final class org/pkl/cli/svm/PolyglotThreadInfoTarget {
public fun <init> ()V
}

public final class org/pkl/cli/svm/ThreadLocalHandshakeTarget {
public fun <init> ()V
}

public final class org/pkl/cli/svm/WeakAssumedValueTarget {
public fun <init> ()V
}

81 changes: 81 additions & 0 deletions pkl-codegen-java/api/pkl-codegen-java.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
public final class org/pkl/codegen/java/CliJavaCodeGenerator : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/codegen/java/CliJavaCodeGeneratorOptions;)V
}

public final class org/pkl/codegen/java/CliJavaCodeGeneratorOptions {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;)V
public synthetic fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun component10 ()Ljava/util/Map;
public final fun component2 ()Ljava/nio/file/Path;
public final fun component3 ()Ljava/lang/String;
public final fun component4 ()Z
public final fun component5 ()Z
public final fun component6 ()Z
public final fun component7 ()Ljava/lang/String;
public final fun component8 ()Ljava/lang/String;
public final fun component9 ()Z
public final fun copy (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;)Lorg/pkl/codegen/java/CliJavaCodeGeneratorOptions;
public static synthetic fun copy$default (Lorg/pkl/codegen/java/CliJavaCodeGeneratorOptions;Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;ILjava/lang/Object;)Lorg/pkl/codegen/java/CliJavaCodeGeneratorOptions;
public fun equals (Ljava/lang/Object;)Z
public final fun getBase ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun getGenerateGetters ()Z
public final fun getGenerateJavadoc ()Z
public final fun getGenerateSpringBootConfig ()Z
public final fun getImplementSerializable ()Z
public final fun getIndent ()Ljava/lang/String;
public final fun getNonNullAnnotation ()Ljava/lang/String;
public final fun getOutputDir ()Ljava/nio/file/Path;
public final fun getParamsAnnotation ()Ljava/lang/String;
public final fun getRenames ()Ljava/util/Map;
public fun hashCode ()I
public final fun toJavaCodegenOptions ()Lorg/pkl/codegen/java/JavaCodeGeneratorOptions;
public fun toString ()Ljava/lang/String;
}

public final class org/pkl/codegen/java/JavaCodeGenerator {
public static final field Companion Lorg/pkl/codegen/java/JavaCodeGenerator$Companion;
public fun <init> (Lorg/pkl/core/ModuleSchema;Lorg/pkl/codegen/java/JavaCodeGeneratorOptions;)V
public final fun getJavaFile ()Ljava/lang/String;
public final fun getOutput ()Ljava/util/Map;
}

public final class org/pkl/codegen/java/JavaCodeGenerator$Companion {
}

public final class org/pkl/codegen/java/JavaCodeGeneratorException : java/lang/RuntimeException {
public fun <init> (Ljava/lang/String;)V
}

public final class org/pkl/codegen/java/JavaCodeGeneratorOptions {
public fun <init> ()V
public fun <init> (Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;)V
public synthetic fun <init> (Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Ljava/lang/String;
public final fun component2 ()Z
public final fun component3 ()Z
public final fun component4 ()Z
public final fun component5 ()Ljava/lang/String;
public final fun component6 ()Ljava/lang/String;
public final fun component7 ()Z
public final fun component8 ()Ljava/util/Map;
public final fun copy (Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;)Lorg/pkl/codegen/java/JavaCodeGeneratorOptions;
public static synthetic fun copy$default (Lorg/pkl/codegen/java/JavaCodeGeneratorOptions;Ljava/lang/String;ZZZLjava/lang/String;Ljava/lang/String;ZLjava/util/Map;ILjava/lang/Object;)Lorg/pkl/codegen/java/JavaCodeGeneratorOptions;
public fun equals (Ljava/lang/Object;)Z
public final fun getGenerateGetters ()Z
public final fun getGenerateJavadoc ()Z
public final fun getGenerateSpringBootConfig ()Z
public final fun getImplementSerializable ()Z
public final fun getIndent ()Ljava/lang/String;
public final fun getNonNullAnnotation ()Ljava/lang/String;
public final fun getParamsAnnotation ()Ljava/lang/String;
public final fun getRenames ()Ljava/util/Map;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}

public final class org/pkl/codegen/java/PklJavaCodegenCommand : org/pkl/commons/cli/commands/ModulesCommand {
public fun <init> ()V
public fun run ()V
}

69 changes: 69 additions & 0 deletions pkl-codegen-kotlin/api/pkl-codegen-kotlin.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
public final class org/pkl/codegen/kotlin/CliKotlinCodeGenerator : org/pkl/commons/cli/CliCommand {
public fun <init> (Lorg/pkl/codegen/kotlin/CliKotlinCodeGeneratorOptions;)V
}

public final class org/pkl/codegen/kotlin/CliKotlinCodeGeneratorOptions {
public fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/util/Map;)V
public synthetic fun <init> (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun component2 ()Ljava/nio/file/Path;
public final fun component3 ()Ljava/lang/String;
public final fun component4 ()Z
public final fun component5 ()Z
public final fun component6 ()Z
public final fun component7 ()Ljava/util/Map;
public final fun copy (Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/util/Map;)Lorg/pkl/codegen/kotlin/CliKotlinCodeGeneratorOptions;
public static synthetic fun copy$default (Lorg/pkl/codegen/kotlin/CliKotlinCodeGeneratorOptions;Lorg/pkl/commons/cli/CliBaseOptions;Ljava/nio/file/Path;Ljava/lang/String;ZZZLjava/util/Map;ILjava/lang/Object;)Lorg/pkl/codegen/kotlin/CliKotlinCodeGeneratorOptions;
public fun equals (Ljava/lang/Object;)Z
public final fun getBase ()Lorg/pkl/commons/cli/CliBaseOptions;
public final fun getGenerateKdoc ()Z
public final fun getGenerateSpringBootConfig ()Z
public final fun getImplementSerializable ()Z
public final fun getIndent ()Ljava/lang/String;
public final fun getOutputDir ()Ljava/nio/file/Path;
public final fun getRenames ()Ljava/util/Map;
public fun hashCode ()I
public final fun toKotlinCodegenOptions ()Lorg/pkl/codegen/kotlin/KotlinCodeGeneratorOptions;
public fun toString ()Ljava/lang/String;
}

public final class org/pkl/codegen/kotlin/KotlinCodeGenerator {
public static final field Companion Lorg/pkl/codegen/kotlin/KotlinCodeGenerator$Companion;
public fun <init> (Lorg/pkl/core/ModuleSchema;Lorg/pkl/codegen/kotlin/KotlinCodeGeneratorOptions;)V
public final fun getKotlinFile ()Ljava/lang/String;
public final fun getOutput ()Ljava/util/Map;
}

public final class org/pkl/codegen/kotlin/KotlinCodeGenerator$Companion {
}

public final class org/pkl/codegen/kotlin/KotlinCodeGeneratorException : java/lang/RuntimeException {
public fun <init> (Ljava/lang/String;)V
}

public final class org/pkl/codegen/kotlin/KotlinCodeGeneratorOptions {
public fun <init> ()V
public fun <init> (Ljava/lang/String;ZZZLjava/util/Map;)V
public synthetic fun <init> (Ljava/lang/String;ZZZLjava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Ljava/lang/String;
public final fun component2 ()Z
public final fun component3 ()Z
public final fun component4 ()Z
public final fun component5 ()Ljava/util/Map;
public final fun copy (Ljava/lang/String;ZZZLjava/util/Map;)Lorg/pkl/codegen/kotlin/KotlinCodeGeneratorOptions;
public static synthetic fun copy$default (Lorg/pkl/codegen/kotlin/KotlinCodeGeneratorOptions;Ljava/lang/String;ZZZLjava/util/Map;ILjava/lang/Object;)Lorg/pkl/codegen/kotlin/KotlinCodeGeneratorOptions;
public fun equals (Ljava/lang/Object;)Z
public final fun getGenerateKdoc ()Z
public final fun getGenerateSpringBootConfig ()Z
public final fun getImplementSerializable ()Z
public final fun getIndent ()Ljava/lang/String;
public final fun getRenames ()Ljava/util/Map;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}

public final class org/pkl/codegen/kotlin/PklKotlinCodegenCommand : org/pkl/commons/cli/commands/ModulesCommand {
public fun <init> ()V
public fun run ()V
}

Loading