Skip to content

generateCode.kt refactor, KDocs, documentation fixes, and tests #1311

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

Merged
merged 9 commits into from
Jul 23, 2025
12 changes: 8 additions & 4 deletions core/api/core.api
Original file line number Diff line number Diff line change
Expand Up @@ -2401,12 +2401,16 @@ public final class org/jetbrains/kotlinx/dataframe/api/GatherKt {
public final class org/jetbrains/kotlinx/dataframe/api/GenerateCodeKt {
public static final fun generateCode (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;ZZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;)Ljava/lang/String;
public static synthetic fun generateCode$default (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;ZZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ILjava/lang/Object;)Ljava/lang/String;
public static final fun generateCodeForSchema (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;ZZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;)Ljava/lang/String;
public static synthetic fun generateCodeForSchema$default (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;ZZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ILjava/lang/Object;)Ljava/lang/String;
public static final fun generateCodeImpl (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;Z)Ljava/lang/String;
public static final fun generateDataClasses (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;)Ljava/lang/String;
public static synthetic fun generateDataClasses$default (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;ILjava/lang/Object;)Ljava/lang/String;
public static final fun generateDataClassesForSchema (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;)Ljava/lang/String;
public static synthetic fun generateDataClassesForSchema$default (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;ILjava/lang/Object;)Ljava/lang/String;
public static final fun generateInterfaces (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;)Ljava/lang/String;
public static final fun generateInterfacesForSchema (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;)Ljava/lang/String;
public static final synthetic fun generateInterfaces (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;)Ljava/lang/String;
public static final fun generateInterfaces (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;)Ljava/lang/String;
public static synthetic fun generateInterfaces$default (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;ILjava/lang/Object;)Ljava/lang/String;
public static final fun generateInterfacesForSchema (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;)Ljava/lang/String;
public static synthetic fun generateInterfacesForSchema$default (Lorg/jetbrains/kotlinx/dataframe/schema/DataFrameSchema;Ljava/lang/String;ZLorg/jetbrains/kotlinx/dataframe/codeGen/MarkerVisibility;ZLorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;ILjava/lang/Object;)Ljava/lang/String;
public static final fun getDefault (Lorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer$Companion;)Lorg/jetbrains/kotlinx/dataframe/codeGen/NameNormalizer;
public static final fun toCodeString (Ljava/lang/String;)Ljava/lang/String;
}
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ import org.jetbrains.kotlinx.dataframe.impl.schema.DataFrameSchemaImpl
import org.jetbrains.kotlinx.dataframe.schema.DataFrameSchema
import kotlin.reflect.KClass

/**
* Which type of visibility the marker (generated class-like code declaration)
* will have:
* - [INTERNAL][INTERNAL]: "internal"
* - [IMPLICIT_PUBLIC][IMPLICIT_PUBLIC]: ""
* - [EXPLICIT_PUBLIC][EXPLICIT_PUBLIC]: "public"
*/
public enum class MarkerVisibility {
INTERNAL,
IMPLICIT_PUBLIC,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,15 @@ internal const val TO_URL_REPLACE = "toUrl()"
internal const val FILTER_BY = "This function is deprecated in favor of `filter { }`. $MESSAGE_1_0"
internal const val FILTER_BY_REPLACE = "filter { column }"

internal const val GENERATE_CODE =
"This function has been deprecated in favor of the more explicit `generateInterfaces()`. The `fields` parameter has also been removed. Use `CodeGenerator` explicitly, if you need it. $MESSAGE_1_0"

internal const val GENERATE_CODE_REPLACE1 = "this.generateInterfaces(extensionProperties = extensionProperties)"
internal const val GENERATE_CODE_REPLACE2 =
"this.generateInterfaces(markerName = markerName, extensionProperties = extensionProperties, visibility = visibility)"

internal const val GENERATE_INTERFACES = "This function is just here for binary compatibility. $MESSAGE_1_0"

// endregion

// region WARNING in 1.0, ERROR in 1.1
Expand Down
Loading