diff --git a/.github/workflows/generated-sources-master.yml b/.github/workflows/generated-sources-master.yml index aebae86e7e..058d762b79 100644 --- a/.github/workflows/generated-sources-master.yml +++ b/.github/workflows/generated-sources-master.yml @@ -13,11 +13,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 - - name: Set up JDK 11 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: '11' + java-version: '21' - name: Run Gradle task run: ./gradlew :core:processKDocsMain korro diff --git a/.github/workflows/generated-sources.yml b/.github/workflows/generated-sources.yml index f9301fbeec..e0339d89b2 100644 --- a/.github/workflows/generated-sources.yml +++ b/.github/workflows/generated-sources.yml @@ -26,11 +26,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 - - name: Set up JDK 11 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: '11' + java-version: '21' - name: Configure Git User run: | diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c10141fac1..b1ec0e59d5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -85,11 +85,14 @@ so do familiarize yourself with the following guidelines. ## Environment requirements -* JDK >= 11 referred to by the `JAVA_HOME` environment variable. +* JDK >= 21 referred to by the `JAVA_HOME` environment variable. - * Note, any version above 11 should work in theory, but JDK 11 is the only version we test with, + * Note, any version above 21 should work in theory, but JDK 21 is the only version we test with, so it is the recommended version. +* JDK == 11 referred to by the `JDK_11_0` environment variable or `gradle.properties`/`local.properties`. + * This is used for testing our compiler plugins. + * We recommend using [IntelliJ IDEA](https://www.jetbrains.com/idea/download/) as the IDE. This has the best support for Kotlin, compiler plugins, Gradle, and [Kotlin Notebook](https://kotlinlang.org/docs/kotlin-notebook-overview.html) of course. diff --git a/build.gradle.kts b/build.gradle.kts index bec23bc336..078d1d01c4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -89,16 +89,10 @@ fun String.findVersion(): Version { // these names of outdated dependencies will not show up in the table output val dependencyUpdateExclusions = listOf( - // TODO Requires more work to be updated to 1.7.0+, https://github.com/Kotlin/dataframe/issues/594 - libs.plugins.kover.get().pluginId, - // TODO 5.8.0 is not possible due to https://github.com/Kotlin/dataframe/issues/595 - libs.kotestAssertions.get().name, - // Can't be updated to 7.4.0+ due to Java 8 compatibility - libs.android.gradle.api.get().group, // Directly dependent on the Gradle version "org.gradle.kotlin.kotlin-dsl", - // Can't be updated to 2.1.0+ due to Java 8 compatibility - libs.plugins.simpleGit.get().pluginId, + // need to revise our tests to update + libs.android.gradle.api.get().group, ) // run `./gradlew dependencyUpdates` to check for updates @@ -139,18 +133,25 @@ tasks.named("dependencyUpdates").configure { } } -kotlin.jvmToolchain(11) +kotlin { + jvmToolchain(21) + compilerOptions { + jvmTarget = JvmTarget.JVM_11 + } +} allprojects { tasks.withType { compilerOptions { jvmTarget = JvmTarget.JVM_11 + freeCompilerArgs.add("-Xjdk-release=11") } } tasks.withType { sourceCompatibility = JavaVersion.VERSION_11.toString() targetCompatibility = JavaVersion.VERSION_11.toString() + options.release.set(11) } // Attempts to configure ktlint for each sub-project that uses the plugin @@ -165,7 +166,7 @@ allprojects { } // set the java toolchain version to 11 for all subprojects for CI stability - extensions.findByType()?.jvmToolchain(11) + extensions.findByType()?.jvmToolchain(21) // Attempts to configure buildConfig for each sub-project that uses it try { diff --git a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/io/json.kt b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/io/json.kt index a54a448626..baff3b703f 100644 --- a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/io/json.kt +++ b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/io/json.kt @@ -1121,7 +1121,7 @@ class JsonTests { @Test fun `serialize column with list of objects`() { val df = dataFrameOf("col")(Regex(".+").findAll("abc").toList()) - val json = shouldNotThrowAny { df.toJson() } + val json = shouldNotThrowAny { df.toJson() }!! val list = DataFrame.readJsonStr(json)["col"][0].shouldBeInstanceOf>() list[0].shouldBeInstanceOf() } diff --git a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/BasicMathTests.kt b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/BasicMathTests.kt index 0c0c156f26..53121d1a9f 100644 --- a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/BasicMathTests.kt +++ b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/BasicMathTests.kt @@ -1,5 +1,6 @@ package org.jetbrains.kotlinx.dataframe.statistics +import io.kotest.matchers.doubles.shouldBeNaN import io.kotest.matchers.shouldBe import org.jetbrains.kotlinx.dataframe.DataColumn import org.jetbrains.kotlinx.dataframe.api.columnOf @@ -18,10 +19,10 @@ class BasicMathTests { @Test fun `mean with nans and nulls`() { - columnOf(10, 20, Double.NaN, null).mean() shouldBe Double.NaN + columnOf(10, 20, Double.NaN, null).mean().shouldBeNaN() columnOf(10, 20, Double.NaN, null).mean(skipNA = true) shouldBe 15 - DataColumn.createValueColumn("", emptyList(), nothingType(false)).mean() shouldBe Double.NaN - DataColumn.createValueColumn("", listOf(null), nothingType(true)).mean() shouldBe Double.NaN + DataColumn.createValueColumn("", emptyList(), nothingType(false)).mean().shouldBeNaN() + DataColumn.createValueColumn("", listOf(null), nothingType(true)).mean().shouldBeNaN() } } diff --git a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/std.kt b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/std.kt index 34f9548b9f..3364fb6d04 100644 --- a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/std.kt +++ b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/statistics/std.kt @@ -1,5 +1,6 @@ package org.jetbrains.kotlinx.dataframe.statistics +import io.kotest.matchers.doubles.shouldBeNaN import io.kotest.matchers.shouldBe import org.jetbrains.kotlinx.dataframe.DataColumn import org.jetbrains.kotlinx.dataframe.api.columnOf @@ -59,10 +60,10 @@ class StdTests { val empty = DataColumn.createValueColumn("", emptyList(), nothingType(false)) val nullable = DataColumn.createValueColumn("", listOf(null), nothingType(true)) - empty.values().std(empty.type) shouldBe Double.NaN - nullable.values().std(nullable.type) shouldBe Double.NaN + empty.values().std(empty.type).shouldBeNaN() + nullable.values().std(nullable.type).shouldBeNaN() - empty.std() shouldBe Double.NaN - nullable.std() shouldBe Double.NaN + empty.std().shouldBeNaN() + nullable.std().shouldBeNaN() } } diff --git a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/testSets/animals/AnimalsTests.kt b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/testSets/animals/AnimalsTests.kt index f8ee4b37d5..2bc8b69b37 100644 --- a/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/testSets/animals/AnimalsTests.kt +++ b/core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/testSets/animals/AnimalsTests.kt @@ -1,5 +1,6 @@ package org.jetbrains.kotlinx.dataframe.testSets.animals +import io.kotest.matchers.doubles.shouldBeNaN import io.kotest.matchers.shouldBe import org.jetbrains.kotlinx.dataframe.api.columnOf import org.jetbrains.kotlinx.dataframe.api.dataFrameOf @@ -42,7 +43,7 @@ class AnimalsTests { .update { age }.with { Double.NaN } .update { visits }.withNull() val mean = cleared.mean() - mean[age] shouldBe Double.NaN - (mean[visits.name()] as Double).isNaN() shouldBe true + mean[age].shouldBeNaN() + (mean[visits.name()] as Double).shouldBeNaN() } } diff --git a/dataframe-openapi-generator/src/test/kotlin/OpenApiTests.kt b/dataframe-openapi-generator/src/test/kotlin/OpenApiTests.kt index d830d0cd76..1ad85f6d22 100644 --- a/dataframe-openapi-generator/src/test/kotlin/OpenApiTests.kt +++ b/dataframe-openapi-generator/src/test/kotlin/OpenApiTests.kt @@ -1,7 +1,6 @@ import io.kotest.assertions.throwables.shouldThrowAny import io.kotest.matchers.booleans.shouldBeTrue import io.kotest.matchers.should -import io.kotest.matchers.shouldBe import io.kotest.matchers.string.haveSubstring import org.intellij.lang.annotations.Language import org.jetbrains.kotlinx.dataframe.AnyFrame @@ -16,7 +15,6 @@ import java.io.File import java.io.File.separatorChar import java.io.InputStream -@Suppress("ktlint:standard:backing-property-naming") class OpenApiTests : JupyterReplTestCase() { private val openApi = OpenApi() @@ -415,7 +413,6 @@ class OpenApiTests : JupyterReplTestCase() { code should haveSubstring(status1Enum) - // category is a single other object, photoUrls is a primitive array, tags is a nullable array of objects @Language("kt") val petInterface = """ @DataSchema(isOpen = false) @@ -428,6 +425,7 @@ class OpenApiTests : JupyterReplTestCase() { val status: $functionName.Status1? public companion object { """.trimLines() + // category is a single other object, photoUrls is a primitive array, tags is a nullable array of objects code should haveSubstring(petInterface) @@ -508,610 +506,527 @@ class OpenApiTests : JupyterReplTestCase() { } @Test - fun `Check advances code generated`() { + fun `Other advanced test`() { val fullFunctionName = ValidFieldName.of(::`Other advanced test`.name) - val code = openApi.readCodeForGeneration( - file = advancedExample, - name = fullFunctionName.unquoted, - extensionProperties = true, - generateHelperCompanionObject = false, - ) + val functionName = fullFunctionName.quotedIfNeeded + val code = execGeneratedCode(advancedExample, fullFunctionName.unquoted) .trimLines() @Language("kt") - val s = """ - interface `Other advanced test` { - - enum class EyeColor(override val value: kotlin.String) : org.jetbrains.kotlinx.dataframe.api.DataSchemaEnum { - BLUE("Blue"), - YELLOW("Yellow"), - BROWN("Brown"), - GREEN("Green"); - } - @DataSchema(isOpen = false) - interface Pet { - @ColumnName("pet_type") - val petType: kotlin.String - @ColumnName("value") - val `value`: kotlin.Any? - val name: kotlin.String - val tag: kotlin.String? - val other: kotlin.Any? - @ColumnName("eye_color") - val eyeColor: `Other advanced test`.EyeColor? - public companion object { - public val keyValuePaths: kotlin.collections.List + val breedEnum = """ + enum class Breed(override val value: kotlin.String) : org.jetbrains.kotlinx.dataframe.api.DataSchemaEnum { + DINGO("Dingo"), + HUSKY("Husky"), + RETRIEVER("Retriever"), + SHEPHERD("Shepherd"); + } + """.trimLines() + + code should haveSubstring(breedEnum) + + @Language("kt") + val dogInterface = """ + @DataSchema(isOpen = false) + interface Dog : $functionName.Pet { + override val tag: kotlin.String + val bark: kotlin.Boolean? + val breed: $functionName.Breed + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf() - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToPet(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToPet() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToPet() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToPet() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToPet() + + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToDog(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - @DataSchema(isOpen = false) - interface Dog : `Other advanced test`.Pet { - override val tag: kotlin.String - val bark: kotlin.Boolean? - val breed: `Other advanced test`.Breed - public companion object { - public val keyValuePaths: kotlin.collections.List + """.trimLines() // tag is nullable in Pet but required in Dog + + code should haveSubstring(dogInterface) + + @Language("kt") + val dogExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Dog>.bark: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Dog_bark") get() = this["bark"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Dog>.bark: kotlin.Boolean? @JvmName("Dog_bark") get() = this["bark"] as kotlin.Boolean? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Dog?>.bark: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableDog_bark") get() = this["bark"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Dog?>.bark: kotlin.Boolean? @JvmName("NullableDog_bark") get() = this["bark"] as kotlin.Boolean? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Dog>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed> @JvmName("Dog_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Dog>.breed: $functionName.Breed @JvmName("Dog_breed") get() = this["breed"] as $functionName.Breed + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Dog?>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed?> @JvmName("NullableDog_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Dog?>.breed: $functionName.Breed? @JvmName("NullableDog_breed") get() = this["breed"] as $functionName.Breed? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Dog>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Dog_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Dog>.tag: kotlin.String @JvmName("Dog_tag") get() = this["tag"] as kotlin.String + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Dog?>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableDog_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Dog?>.tag: kotlin.String? @JvmName("NullableDog_tag") get() = this["tag"] as kotlin.String? + """.trimLines() + + code should haveSubstring(dogExtensions) + + @Language("kt") + val breed1Enum = """ + enum class Breed1(override val value: kotlin.String) : org.jetbrains.kotlinx.dataframe.api.DataSchemaEnum { + RAGDOLL("Ragdoll"), + SHORTHAIR("Shorthair"), + PERSIAN("Persian"), + MAINE_COON("Maine Coon"), + MAINE_COON_1("maine_coon"), + EMPTY_STRING(""), + `1`("1"); + } + """.trimLines() // nullable enum, but taken care of in properties that use this enum + + code should haveSubstring(breed1Enum) + + @Language("kt") + val catInterface = """ + @DataSchema(isOpen = false) + interface Cat : $functionName.Pet { + val hunts: kotlin.Boolean? + val age: kotlin.Float? + val breed: $functionName.Breed1? + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf() - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToDog(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToCat(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { convertDataRowsWithOpenApi() convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToDog() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToDog() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToDog() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToDog() } - - } - enum class Breed(override val value: kotlin.String) : org.jetbrains.kotlinx.dataframe.api.DataSchemaEnum { - DINGO("Dingo"), - HUSKY("Husky"), - RETRIEVER("Retriever"), - SHEPHERD("Shepherd"); - } - @DataSchema(isOpen = false) - interface Cat : `Other advanced test`.Pet { - val hunts: kotlin.Boolean? - val age: kotlin.Float? - val breed: `Other advanced test`.Breed1? - public companion object { - public val keyValuePaths: kotlin.collections.List + """.trimLines() + // hunts is required but marked nullable, age is either integer or number, breed is nullable enum + + code should haveSubstring(catInterface) + + @Language("kt") + val catExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Cat>.age: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Cat_age") get() = this["age"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Cat>.age: kotlin.Float? @JvmName("Cat_age") get() = this["age"] as kotlin.Float? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Cat?>.age: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableCat_age") get() = this["age"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Cat?>.age: kotlin.Float? @JvmName("NullableCat_age") get() = this["age"] as kotlin.Float? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Cat>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed1?> @JvmName("Cat_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed1?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Cat>.breed: $functionName.Breed1? @JvmName("Cat_breed") get() = this["breed"] as $functionName.Breed1? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Cat?>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed1?> @JvmName("NullableCat_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Breed1?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Cat?>.breed: $functionName.Breed1? @JvmName("NullableCat_breed") get() = this["breed"] as $functionName.Breed1? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Cat>.hunts: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Cat_hunts") get() = this["hunts"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Cat>.hunts: kotlin.Boolean? @JvmName("Cat_hunts") get() = this["hunts"] as kotlin.Boolean? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Cat?>.hunts: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableCat_hunts") get() = this["hunts"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Cat?>.hunts: kotlin.Boolean? @JvmName("NullableCat_hunts") get() = this["hunts"] as kotlin.Boolean? + """.trimLines() + + code should haveSubstring(catExtensions) + + @Language("kt") + val eyeColorEnum = """ + enum class EyeColor(override val value: kotlin.String) : org.jetbrains.kotlinx.dataframe.api.DataSchemaEnum { + BLUE("Blue"), + YELLOW("Yellow"), + BROWN("Brown"), + GREEN("Green"); + } + """.trimLines() // nullable enum, but taken care of in properties that use this enum + + code should haveSubstring(eyeColorEnum) + + @Language("kt") + val petInterface = """ + @DataSchema(isOpen = false) + interface Pet { + @ColumnName("pet_type") + val petType: kotlin.String + @ColumnName("value") + val `value`: kotlin.Any? + val name: kotlin.String + val tag: kotlin.String? + val other: kotlin.Any? + @ColumnName("eye_color") + val eyeColor: $functionName.EyeColor? + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf() - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToCat(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToPet(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { convertDataRowsWithOpenApi() convertTo() } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToCat() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToCat() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToCat() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToCat() - } - - } - enum class Breed1(override val value: kotlin.String) : org.jetbrains.kotlinx.dataframe.api.DataSchemaEnum { - RAGDOLL("Ragdoll"), - SHORTHAIR("Shorthair"), - PERSIAN("Persian"), - MAINE_COON("Maine Coon"), - MAINE_COON_1("maine_coon"), - EMPTY_STRING(""), - `1`("1"); - } - @DataSchema(isOpen = false) - interface IntList { - val list: kotlin.collections.List - public companion object { - public val keyValuePaths: kotlin.collections.List + """.trimLines() + // petType was named pet_type, id is either Long or String, other is not integer, eyeColor is a required but nullable enum + + code should haveSubstring(petInterface) + + @Language("kt") + val petExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet>.`value`: kotlin.Any? @JvmName("Pet_value") get() = this["value"] as kotlin.Any? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet?>.`value`: kotlin.Any? @JvmName("NullablePet_value") get() = this["value"] as kotlin.Any? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet>.eyeColor: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.EyeColor?> @JvmName("Pet_eyeColor") get() = this["eye_color"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.EyeColor?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet>.eyeColor: $functionName.EyeColor? @JvmName("Pet_eyeColor") get() = this["eye_color"] as $functionName.EyeColor? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet?>.eyeColor: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.EyeColor?> @JvmName("NullablePet_eyeColor") get() = this["eye_color"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.EyeColor?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet?>.eyeColor: $functionName.EyeColor? @JvmName("NullablePet_eyeColor") get() = this["eye_color"] as $functionName.EyeColor? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet>.name: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_name") get() = this["name"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet>.name: kotlin.String @JvmName("Pet_name") get() = this["name"] as kotlin.String + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet?>.name: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_name") get() = this["name"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet?>.name: kotlin.String? @JvmName("NullablePet_name") get() = this["name"] as kotlin.String? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet>.other: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_other") get() = this["other"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet>.other: kotlin.Any? @JvmName("Pet_other") get() = this["other"] as kotlin.Any? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet?>.other: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_other") get() = this["other"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet?>.other: kotlin.Any? @JvmName("NullablePet_other") get() = this["other"] as kotlin.Any? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet>.petType: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_petType") get() = this["pet_type"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet>.petType: kotlin.String @JvmName("Pet_petType") get() = this["pet_type"] as kotlin.String + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet?>.petType: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_petType") get() = this["pet_type"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet?>.petType: kotlin.String? @JvmName("NullablePet_petType") get() = this["pet_type"] as kotlin.String? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet>.tag: kotlin.String? @JvmName("Pet_tag") get() = this["tag"] as kotlin.String? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Pet?>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Pet?>.tag: kotlin.String? @JvmName("NullablePet_tag") get() = this["tag"] as kotlin.String? + """.trimLines() + + code should haveSubstring(petExtensions) + + @Language("kt") + val petRefTypeAlias = """ + typealias PetRef = $functionName.Pet + """.trimLines() // is either Cat or Dog, we cannot merge objects, but they have the same ancestor, so Pet + + code should haveSubstring(petRefTypeAlias) + + @Language("kt") + val alsoCatTypeAlias = """ + typealias AlsoCat = $functionName.Cat + """.trimLines() + + code should haveSubstring(alsoCatTypeAlias) + + @Language("kt") + val integerTypeAlias = """ + typealias Integer = kotlin.Int + """.trimLines() + + code should haveSubstring(integerTypeAlias) + + @Language("kt") + val intListInterface = """ + @DataSchema(isOpen = false) + interface IntList { + val list: kotlin.collections.List + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf() - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToIntList(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToIntList() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToIntList() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToIntList() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToIntList() + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToIntList(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - @DataSchema(isOpen = false) - interface ObjectWithAdditionalProperties : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { - @ColumnName("value") - override val `value`: kotlin.String - override val key: kotlin.String - public companion object { - public val keyValuePaths: kotlin.collections.List + """.trimLines() // array of primitives, so list int + + code should haveSubstring(intListInterface) + + @Language("kt") + val intListExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.IntList>.list: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("IntList_list") get() = this["list"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.IntList>.list: kotlin.collections.List @JvmName("IntList_list") get() = this["list"] as kotlin.collections.List + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.IntList?>.list: org.jetbrains.kotlinx.dataframe.DataColumn?> @JvmName("NullableIntList_list") get() = this["list"] as org.jetbrains.kotlinx.dataframe.DataColumn?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.IntList?>.list: kotlin.collections.List? @JvmName("NullableIntList_list") get() = this["list"] as kotlin.collections.List? + """.trimLines() + + code should haveSubstring(intListExtensions) + + @Language("kt") + val objectWithAdditionalPropertiesInterface = """ + @DataSchema(isOpen = false) + interface ObjectWithAdditionalProperties : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { + @ColumnName("value") + override val `value`: kotlin.String + override val key: kotlin.String + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf(JsonPath(""${'"'}${'$'}""${'"'})) - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditionalProperties(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditionalProperties() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditionalProperties() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditionalProperties() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditionalProperties() - } - - } - enum class Op(override val value: kotlin.String) : org.jetbrains.kotlinx.dataframe.api.DataSchemaEnum { - ADD("add"), - REMOVE("remove"), - REPLACE("replace"); - } - @DataSchema(isOpen = false) - interface Value { - - public companion object { - public val keyValuePaths: kotlin.collections.List - get() = listOf() - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToValue(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToValue() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToValue() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToValue() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToValue() + + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditionalProperties(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - @DataSchema(isOpen = false) - interface ObjectWithAdditional : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { - @ColumnName("value") - override val `value`: kotlin.Int - override val key: kotlin.String - public companion object { - public val keyValuePaths: kotlin.collections.List + + public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame + .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } + .convertToObjectWithAdditionalProperties() + """.trimLines() + + code should haveSubstring(objectWithAdditionalPropertiesInterface) + + @Language("kt") + val objectWithAdditionalPropertiesExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditionalProperties>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditionalProperties_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditionalProperties>.`value`: kotlin.String @JvmName("ObjectWithAdditionalProperties_value") get() = this["value"] as kotlin.String + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditionalProperties?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditionalProperties_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditionalProperties?>.`value`: kotlin.String? @JvmName("NullableObjectWithAdditionalProperties_value") get() = this["value"] as kotlin.String? + """.trimLines() + + code should haveSubstring(objectWithAdditionalPropertiesExtensions) + + @Language("kt") + val objectWithAdditional2Interface = """ + @DataSchema(isOpen = false) + interface ObjectWithAdditional2 : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { + @ColumnName("value") + override val `value`: kotlin.Any + override val key: kotlin.String + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf(JsonPath(""${'"'}${'$'}""${'"'})) - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditional(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional() + + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditional2(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - @DataSchema(isOpen = false) - interface SomeArrayContent { - val op: `Other advanced test`.Op - val path: kotlin.String - @ColumnName("value") - val `value`: `Other advanced test`.Value? - val objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional?> - public companion object { - public val keyValuePaths: kotlin.collections.List - get() = listOf(JsonPath(""${'"'}${'$'}["objectWithAdditional"]""${'"'})) - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToSomeArrayContent(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToSomeArrayContent() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToSomeArrayContent() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToSomeArrayContent() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToSomeArrayContent() + + public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame + .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } + .convertToObjectWithAdditional2() + """.trimLines() + + code should haveSubstring(objectWithAdditional2Interface) + + @Language("kt") + val objectWithAdditional2Extensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditional2>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional2_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditional2>.`value`: kotlin.Any @JvmName("ObjectWithAdditional2_value") get() = this["value"] as kotlin.Any + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditional2?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional2_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditional2?>.`value`: kotlin.Any? @JvmName("NullableObjectWithAdditional2_value") get() = this["value"] as kotlin.Any? + """.trimLines() + + code should haveSubstring(objectWithAdditional2Extensions) + + @Language("kt") + val objectWithAdditional3Interface = """ + @DataSchema(isOpen = false) + interface ObjectWithAdditional3 : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { + @ColumnName("value") + override val `value`: kotlin.Any? + override val key: kotlin.String + public companion object { + public val keyValuePaths: kotlin.collections.List + get() = listOf(JsonPath(""${'"'}${'$'}""${'"'})) + + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditional3(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - @DataSchema(isOpen = false) - interface Error { - val ints: `Other advanced test`.IntList? - val petRef: PetRef - val pets: org.jetbrains.kotlinx.dataframe.DataFrame - val code: kotlin.Int - val message: kotlin.String - val objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditionalProperties> - val objectWithAdditionalList: kotlin.collections.List>? - val objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional2?> - val objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional3> - val array: kotlin.collections.List? - public companion object { - public val keyValuePaths: kotlin.collections.List + + public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame + .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } + .convertToObjectWithAdditional3() + """.trimLines() + + code should haveSubstring(objectWithAdditional3Interface) + + @Language("kt") + val objectWithAdditional3Extensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditional3>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional3_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditional3>.`value`: kotlin.Any? @JvmName("ObjectWithAdditional3_value") get() = this["value"] as kotlin.Any? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditional3?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional3_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditional3?>.`value`: kotlin.Any? @JvmName("NullableObjectWithAdditional3_value") get() = this["value"] as kotlin.Any? + """.trimLines() + + code should haveSubstring(objectWithAdditional3Extensions) + + // TODO broke PetRef? + @Language("kt") + val errorInterface = """ + @DataSchema(isOpen = false) + interface Error { + val ints: $functionName.IntList? + val petRef: PetRef + val pets: org.jetbrains.kotlinx.dataframe.DataFrame + val code: kotlin.Int + val message: kotlin.String + val objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditionalProperties> + val objectWithAdditionalList: kotlin.collections.List>? + val objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional2?> + val objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional3> + val array: kotlin.collections.List? + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf(JsonPath(""${'"'}${'$'}["objectWithAdditional"]""${'"'}), JsonPath(""${'"'}${'$'}["objectWithAdditionalList"][*]""${'"'}), JsonPath(""${'"'}${'$'}["objectWithAdditional2"]""${'"'}), JsonPath(""${'"'}${'$'}["objectWithAdditional3"]""${'"'}), JsonPath(""${'"'}${'$'}["array"][*][*][*]["objectWithAdditional"]""${'"'})) - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToError(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToError() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToError() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToError() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToError() + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToError(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - @DataSchema(isOpen = false) - interface ObjectWithAdditional2 : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { - @ColumnName("value") - override val `value`: kotlin.Any - override val key: kotlin.String - public companion object { - public val keyValuePaths: kotlin.collections.List + """.trimLines() + + code should haveSubstring(errorInterface) + + @Language("kt") + val errorExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.array: org.jetbrains.kotlinx.dataframe.DataColumn?> @JvmName("Error_array") get() = this["array"] as org.jetbrains.kotlinx.dataframe.DataColumn?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.array: kotlin.collections.List? @JvmName("Error_array") get() = this["array"] as kotlin.collections.List? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.array: org.jetbrains.kotlinx.dataframe.DataColumn?> @JvmName("NullableError_array") get() = this["array"] as org.jetbrains.kotlinx.dataframe.DataColumn?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.array: kotlin.collections.List? @JvmName("NullableError_array") get() = this["array"] as kotlin.collections.List? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.code: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Error_code") get() = this["code"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.code: kotlin.Int @JvmName("Error_code") get() = this["code"] as kotlin.Int + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.code: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableError_code") get() = this["code"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.code: kotlin.Int? @JvmName("NullableError_code") get() = this["code"] as kotlin.Int? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.ints: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.IntList?> @JvmName("Error_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.IntList?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.ints: org.jetbrains.kotlinx.dataframe.DataRow<$functionName.IntList?> @JvmName("Error_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.DataRow<$functionName.IntList?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.ints: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.IntList?> @JvmName("NullableError_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.IntList?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.ints: org.jetbrains.kotlinx.dataframe.DataRow<$functionName.IntList?> @JvmName("NullableError_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.DataRow<$functionName.IntList?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.message: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Error_message") get() = this["message"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.message: kotlin.String @JvmName("Error_message") get() = this["message"] as kotlin.String + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.message: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableError_message") get() = this["message"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.message: kotlin.String? @JvmName("NullableError_message") get() = this["message"] as kotlin.String? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditionalProperties> @JvmName("Error_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditionalProperties> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditionalProperties?> @JvmName("NullableError_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditionalProperties?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional2?> @JvmName("Error_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional2?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional2?> @JvmName("NullableError_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional2?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional3> @JvmName("Error_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional3> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional3?> @JvmName("NullableError_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional3?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.objectWithAdditionalList: org.jetbrains.kotlinx.dataframe.DataColumn>?> @JvmName("Error_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as org.jetbrains.kotlinx.dataframe.DataColumn>?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.objectWithAdditionalList: kotlin.collections.List>? @JvmName("Error_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as kotlin.collections.List>? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.objectWithAdditionalList: org.jetbrains.kotlinx.dataframe.DataColumn>?> @JvmName("NullableError_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as org.jetbrains.kotlinx.dataframe.DataColumn>?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.objectWithAdditionalList: kotlin.collections.List>? @JvmName("NullableError_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as kotlin.collections.List>? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.petRef: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup @JvmName("Error_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.petRef: org.jetbrains.kotlinx.dataframe.DataRow @JvmName("Error_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.DataRow + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.petRef: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup @JvmName("NullableError_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.petRef: org.jetbrains.kotlinx.dataframe.DataRow @JvmName("NullableError_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.DataRow + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error>.pets: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error>.pets: org.jetbrains.kotlinx.dataframe.DataFrame @JvmName("Error_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataFrame + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.Error?>.pets: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Error?>.pets: org.jetbrains.kotlinx.dataframe.DataFrame @JvmName("NullableError_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataFrame + """.trimLines() + + code should haveSubstring(errorExtensions) + + @Language("kt") + val valueInterface = """ + @DataSchema(isOpen = false) + interface Value + """.trimLines() + + code should haveSubstring(valueInterface) + + @Language("kt") + val objectWithAdditionalInterface = """ + @DataSchema(isOpen = false) + interface ObjectWithAdditional : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { + @ColumnName("value") + override val `value`: kotlin.Int + override val key: kotlin.String + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf(JsonPath(""${'"'}${'$'}""${'"'})) - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditional2(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional2() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional2() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional2() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional2() + + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditional(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } + + public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame + .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } + .convertToObjectWithAdditional() + """.trimLines() + + code should haveSubstring(objectWithAdditionalInterface) + + @Language("kt") + val objectWithAdditionalExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditional>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditional>.`value`: kotlin.Int @JvmName("ObjectWithAdditional_value") get() = this["value"] as kotlin.Int + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ObjectWithAdditional?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ObjectWithAdditional?>.`value`: kotlin.Int? @JvmName("NullableObjectWithAdditional_value") get() = this["value"] as kotlin.Int? + """.trimLines() + + code should haveSubstring(objectWithAdditionalExtensions) + + @Language("kt") + val someArrayContentInterface = """ + @DataSchema(isOpen = false) + interface SomeArrayContent { + val op: $functionName.Op + val path: kotlin.String + @ColumnName("value") + val `value`: $functionName.Value? + val objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional?> + public companion object { + public val keyValuePaths: kotlin.collections.List + get() = listOf(JsonPath(""${'"'}${'$'}["objectWithAdditional"]""${'"'})) - } - @DataSchema(isOpen = false) - interface ObjectWithAdditional3 : org.jetbrains.kotlinx.dataframe.io.AdditionalProperty { - @ColumnName("value") - override val `value`: kotlin.Any? - override val key: kotlin.String - public companion object { - public val keyValuePaths: kotlin.collections.List - get() = listOf(JsonPath(""${'"'}${'$'}""${'"'})) - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToObjectWithAdditional3(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional3() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional3() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional3() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths)["value"].first().let { it as DataFrame<*> } - .convertToObjectWithAdditional3() + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToSomeArrayContent(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - @DataSchema(isOpen = false) - interface ErrorHolder { - val errors: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.Error> - public companion object { - public val keyValuePaths: kotlin.collections.List + + public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame + .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) + .convertToSomeArrayContent() + """.trimLines() + + code should haveSubstring(someArrayContentInterface) + + @Language("kt") + val someArrayContentExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent>.`value`: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.Value?> @JvmName("SomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.Value?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent>.`value`: org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Value?> @JvmName("SomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Value?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent?>.`value`: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.Value?> @JvmName("NullableSomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<$functionName.Value?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent?>.`value`: org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Value?> @JvmName("NullableSomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataRow<$functionName.Value?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("SomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional?> @JvmName("SomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableSomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional?> @JvmName("NullableSomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.ObjectWithAdditional?> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent>.op: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Op> @JvmName("SomeArrayContent_op") get() = this["op"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Op> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent>.op: $functionName.Op @JvmName("SomeArrayContent_op") get() = this["op"] as $functionName.Op + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent?>.op: org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Op?> @JvmName("NullableSomeArrayContent_op") get() = this["op"] as org.jetbrains.kotlinx.dataframe.DataColumn<$functionName.Op?> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent?>.op: $functionName.Op? @JvmName("NullableSomeArrayContent_op") get() = this["op"] as $functionName.Op? + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent>.path: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("SomeArrayContent_path") get() = this["path"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent>.path: kotlin.String @JvmName("SomeArrayContent_path") get() = this["path"] as kotlin.String + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.SomeArrayContent?>.path: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableSomeArrayContent_path") get() = this["path"] as org.jetbrains.kotlinx.dataframe.DataColumn + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.SomeArrayContent?>.path: kotlin.String? @JvmName("NullableSomeArrayContent_path") get() = this["path"] as kotlin.String? + """.trimLines() + + code should haveSubstring(someArrayContentExtensions) + + @Language("kt") + val someArrayTypeAlias = """ + typealias SomeArray = org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.SomeArrayContent> + """.trimLines() + + code should haveSubstring(someArrayTypeAlias) + + @Language("kt") + val errorHolderInterface = """ + @DataSchema(isOpen = false) + interface ErrorHolder { + val errors: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.Error> + public companion object { + public val keyValuePaths: kotlin.collections.List get() = listOf(JsonPath(""${'"'}${'$'}["errors"][*]["objectWithAdditional"]""${'"'}), JsonPath(""${'"'}${'$'}["errors"][*]["objectWithAdditionalList"][*]""${'"'}), JsonPath(""${'"'}${'$'}["errors"][*]["objectWithAdditional2"]""${'"'}), JsonPath(""${'"'}${'$'}["errors"][*]["objectWithAdditional3"]""${'"'}), JsonPath(""${'"'}${'$'}["errors"][*]["array"][*][*][*]["objectWithAdditional"]""${'"'})) - - public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToErrorHolder(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { - convertDataRowsWithOpenApi() - convertTo() - } - - public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToErrorHolder() - - public fun readJson(path: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(path, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToErrorHolder() - - public fun readJson(stream: java.io.InputStream): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJson(stream, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToErrorHolder() - - public fun readJsonStr(text: kotlin.String): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame - .readJsonStr(text, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) - .convertToErrorHolder() + + public fun org.jetbrains.kotlinx.dataframe.DataFrame<*>.convertToErrorHolder(convertTo: org.jetbrains.kotlinx.dataframe.api.ConvertSchemaDsl.() -> kotlin.Unit = {}): org.jetbrains.kotlinx.dataframe.DataFrame = convertTo { + convertDataRowsWithOpenApi() + convertTo() } - - } - } - typealias PetRef = `Other advanced test`.Pet - typealias AlsoCat = `Other advanced test`.Cat - typealias Integer = kotlin.Int - typealias SomeArray = org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.SomeArrayContent> - typealias SomeArrayArray = kotlin.collections.List - - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet>.`value`: kotlin.Any? @JvmName("Pet_value") get() = this["value"] as kotlin.Any? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet?>.`value`: kotlin.Any? @JvmName("NullablePet_value") get() = this["value"] as kotlin.Any? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet>.eyeColor: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.EyeColor?> @JvmName("Pet_eyeColor") get() = this["eye_color"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.EyeColor?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet>.eyeColor: `Other advanced test`.EyeColor? @JvmName("Pet_eyeColor") get() = this["eye_color"] as `Other advanced test`.EyeColor? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet?>.eyeColor: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.EyeColor?> @JvmName("NullablePet_eyeColor") get() = this["eye_color"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.EyeColor?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet?>.eyeColor: `Other advanced test`.EyeColor? @JvmName("NullablePet_eyeColor") get() = this["eye_color"] as `Other advanced test`.EyeColor? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet>.name: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_name") get() = this["name"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet>.name: kotlin.String @JvmName("Pet_name") get() = this["name"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet?>.name: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_name") get() = this["name"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet?>.name: kotlin.String? @JvmName("NullablePet_name") get() = this["name"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet>.other: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_other") get() = this["other"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet>.other: kotlin.Any? @JvmName("Pet_other") get() = this["other"] as kotlin.Any? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet?>.other: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_other") get() = this["other"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet?>.other: kotlin.Any? @JvmName("NullablePet_other") get() = this["other"] as kotlin.Any? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet>.petType: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_petType") get() = this["pet_type"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet>.petType: kotlin.String @JvmName("Pet_petType") get() = this["pet_type"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet?>.petType: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_petType") get() = this["pet_type"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet?>.petType: kotlin.String? @JvmName("NullablePet_petType") get() = this["pet_type"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Pet_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet>.tag: kotlin.String? @JvmName("Pet_tag") get() = this["tag"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Pet?>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullablePet_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Pet?>.tag: kotlin.String? @JvmName("NullablePet_tag") get() = this["tag"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Dog>.bark: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Dog_bark") get() = this["bark"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Dog>.bark: kotlin.Boolean? @JvmName("Dog_bark") get() = this["bark"] as kotlin.Boolean? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Dog?>.bark: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableDog_bark") get() = this["bark"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Dog?>.bark: kotlin.Boolean? @JvmName("NullableDog_bark") get() = this["bark"] as kotlin.Boolean? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Dog>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed> @JvmName("Dog_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Dog>.breed: `Other advanced test`.Breed @JvmName("Dog_breed") get() = this["breed"] as `Other advanced test`.Breed - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Dog?>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed?> @JvmName("NullableDog_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Dog?>.breed: `Other advanced test`.Breed? @JvmName("NullableDog_breed") get() = this["breed"] as `Other advanced test`.Breed? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Dog>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Dog_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Dog>.tag: kotlin.String @JvmName("Dog_tag") get() = this["tag"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Dog?>.tag: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableDog_tag") get() = this["tag"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Dog?>.tag: kotlin.String? @JvmName("NullableDog_tag") get() = this["tag"] as kotlin.String? - - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Cat>.age: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Cat_age") get() = this["age"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Cat>.age: kotlin.Float? @JvmName("Cat_age") get() = this["age"] as kotlin.Float? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Cat?>.age: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableCat_age") get() = this["age"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Cat?>.age: kotlin.Float? @JvmName("NullableCat_age") get() = this["age"] as kotlin.Float? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Cat>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed1?> @JvmName("Cat_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed1?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Cat>.breed: `Other advanced test`.Breed1? @JvmName("Cat_breed") get() = this["breed"] as `Other advanced test`.Breed1? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Cat?>.breed: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed1?> @JvmName("NullableCat_breed") get() = this["breed"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Breed1?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Cat?>.breed: `Other advanced test`.Breed1? @JvmName("NullableCat_breed") get() = this["breed"] as `Other advanced test`.Breed1? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Cat>.hunts: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Cat_hunts") get() = this["hunts"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Cat>.hunts: kotlin.Boolean? @JvmName("Cat_hunts") get() = this["hunts"] as kotlin.Boolean? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Cat?>.hunts: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableCat_hunts") get() = this["hunts"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Cat?>.hunts: kotlin.Boolean? @JvmName("NullableCat_hunts") get() = this["hunts"] as kotlin.Boolean? - - - - - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.IntList>.list: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("IntList_list") get() = this["list"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.IntList>.list: kotlin.collections.List @JvmName("IntList_list") get() = this["list"] as kotlin.collections.List - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.IntList?>.list: org.jetbrains.kotlinx.dataframe.DataColumn?> @JvmName("NullableIntList_list") get() = this["list"] as org.jetbrains.kotlinx.dataframe.DataColumn?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.IntList?>.list: kotlin.collections.List? @JvmName("NullableIntList_list") get() = this["list"] as kotlin.collections.List? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditionalProperties>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditionalProperties_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditionalProperties>.`value`: kotlin.String @JvmName("ObjectWithAdditionalProperties_value") get() = this["value"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditionalProperties?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditionalProperties_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditionalProperties?>.`value`: kotlin.String? @JvmName("NullableObjectWithAdditionalProperties_value") get() = this["value"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditionalProperties>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditionalProperties_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditionalProperties>.key: kotlin.String @JvmName("ObjectWithAdditionalProperties_key") get() = this["key"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditionalProperties?>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditionalProperties_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditionalProperties?>.key: kotlin.String? @JvmName("NullableObjectWithAdditionalProperties_key") get() = this["key"] as kotlin.String? - - - - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional>.`value`: kotlin.Int @JvmName("ObjectWithAdditional_value") get() = this["value"] as kotlin.Int - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional?>.`value`: kotlin.Int? @JvmName("NullableObjectWithAdditional_value") get() = this["value"] as kotlin.Int? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional>.key: kotlin.String @JvmName("ObjectWithAdditional_key") get() = this["key"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional?>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional?>.key: kotlin.String? @JvmName("NullableObjectWithAdditional_key") get() = this["key"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent>.`value`: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.Value?> @JvmName("SomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.Value?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent>.`value`: org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Value?> @JvmName("SomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Value?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent?>.`value`: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.Value?> @JvmName("NullableSomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.Value?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent?>.`value`: org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Value?> @JvmName("NullableSomeArrayContent_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Value?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("SomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional?> @JvmName("SomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableSomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional?> @JvmName("NullableSomeArrayContent_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent>.op: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Op> @JvmName("SomeArrayContent_op") get() = this["op"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Op> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent>.op: `Other advanced test`.Op @JvmName("SomeArrayContent_op") get() = this["op"] as `Other advanced test`.Op - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent?>.op: org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Op?> @JvmName("NullableSomeArrayContent_op") get() = this["op"] as org.jetbrains.kotlinx.dataframe.DataColumn<`Other advanced test`.Op?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent?>.op: `Other advanced test`.Op? @JvmName("NullableSomeArrayContent_op") get() = this["op"] as `Other advanced test`.Op? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent>.path: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("SomeArrayContent_path") get() = this["path"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent>.path: kotlin.String @JvmName("SomeArrayContent_path") get() = this["path"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.SomeArrayContent?>.path: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableSomeArrayContent_path") get() = this["path"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.SomeArrayContent?>.path: kotlin.String? @JvmName("NullableSomeArrayContent_path") get() = this["path"] as kotlin.String? - - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.array: org.jetbrains.kotlinx.dataframe.DataColumn?> @JvmName("Error_array") get() = this["array"] as org.jetbrains.kotlinx.dataframe.DataColumn?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.array: kotlin.collections.List? @JvmName("Error_array") get() = this["array"] as kotlin.collections.List? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.array: org.jetbrains.kotlinx.dataframe.DataColumn?> @JvmName("NullableError_array") get() = this["array"] as org.jetbrains.kotlinx.dataframe.DataColumn?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.array: kotlin.collections.List? @JvmName("NullableError_array") get() = this["array"] as kotlin.collections.List? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.code: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Error_code") get() = this["code"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.code: kotlin.Int @JvmName("Error_code") get() = this["code"] as kotlin.Int - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.code: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableError_code") get() = this["code"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.code: kotlin.Int? @JvmName("NullableError_code") get() = this["code"] as kotlin.Int? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.ints: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.IntList?> @JvmName("Error_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.IntList?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.ints: org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.IntList?> @JvmName("Error_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.IntList?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.ints: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.IntList?> @JvmName("NullableError_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup<`Other advanced test`.IntList?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.ints: org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.IntList?> @JvmName("NullableError_ints") get() = this["ints"] as org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.IntList?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.message: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("Error_message") get() = this["message"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.message: kotlin.String @JvmName("Error_message") get() = this["message"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.message: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableError_message") get() = this["message"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.message: kotlin.String? @JvmName("NullableError_message") get() = this["message"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditionalProperties> @JvmName("Error_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditionalProperties> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.objectWithAdditional: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditionalProperties?> @JvmName("NullableError_objectWithAdditional") get() = this["objectWithAdditional"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditionalProperties?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional2?> @JvmName("Error_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional2?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.objectWithAdditional2: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional2?> @JvmName("NullableError_objectWithAdditional2") get() = this["objectWithAdditional2"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional2?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional3> @JvmName("Error_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional3> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.objectWithAdditional3: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional3?> @JvmName("NullableError_objectWithAdditional3") get() = this["objectWithAdditional3"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.ObjectWithAdditional3?> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.objectWithAdditionalList: org.jetbrains.kotlinx.dataframe.DataColumn>?> @JvmName("Error_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as org.jetbrains.kotlinx.dataframe.DataColumn>?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.objectWithAdditionalList: kotlin.collections.List>? @JvmName("Error_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as kotlin.collections.List>? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.objectWithAdditionalList: org.jetbrains.kotlinx.dataframe.DataColumn>?> @JvmName("NullableError_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as org.jetbrains.kotlinx.dataframe.DataColumn>?> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.objectWithAdditionalList: kotlin.collections.List>? @JvmName("NullableError_objectWithAdditionalList") get() = this["objectWithAdditionalList"] as kotlin.collections.List>? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.petRef: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup @JvmName("Error_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.petRef: org.jetbrains.kotlinx.dataframe.DataRow @JvmName("Error_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.DataRow - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.petRef: org.jetbrains.kotlinx.dataframe.columns.ColumnGroup @JvmName("NullableError_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.columns.ColumnGroup - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.petRef: org.jetbrains.kotlinx.dataframe.DataRow @JvmName("NullableError_petRef") get() = this["petRef"] as org.jetbrains.kotlinx.dataframe.DataRow - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error>.pets: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("Error_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error>.pets: org.jetbrains.kotlinx.dataframe.DataFrame @JvmName("Error_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataFrame - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.Error?>.pets: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableError_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.Error?>.pets: org.jetbrains.kotlinx.dataframe.DataFrame @JvmName("NullableError_pets") get() = this["pets"] as org.jetbrains.kotlinx.dataframe.DataFrame - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional2>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional2_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional2>.`value`: kotlin.Any @JvmName("ObjectWithAdditional2_value") get() = this["value"] as kotlin.Any - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional2?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional2_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional2?>.`value`: kotlin.Any? @JvmName("NullableObjectWithAdditional2_value") get() = this["value"] as kotlin.Any? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional2>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional2_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional2>.key: kotlin.String @JvmName("ObjectWithAdditional2_key") get() = this["key"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional2?>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional2_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional2?>.key: kotlin.String? @JvmName("NullableObjectWithAdditional2_key") get() = this["key"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional3>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional3_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional3>.`value`: kotlin.Any? @JvmName("ObjectWithAdditional3_value") get() = this["value"] as kotlin.Any? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional3?>.`value`: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional3_value") get() = this["value"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional3?>.`value`: kotlin.Any? @JvmName("NullableObjectWithAdditional3_value") get() = this["value"] as kotlin.Any? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional3>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("ObjectWithAdditional3_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional3>.key: kotlin.String @JvmName("ObjectWithAdditional3_key") get() = this["key"] as kotlin.String - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ObjectWithAdditional3?>.key: org.jetbrains.kotlinx.dataframe.DataColumn @JvmName("NullableObjectWithAdditional3_key") get() = this["key"] as org.jetbrains.kotlinx.dataframe.DataColumn - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ObjectWithAdditional3?>.key: kotlin.String? @JvmName("NullableObjectWithAdditional3_key") get() = this["key"] as kotlin.String? - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ErrorHolder>.errors: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("ErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ErrorHolder>.errors: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.Error> @JvmName("ErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.Error> - val org.jetbrains.kotlinx.dataframe.ColumnsContainer<`Other advanced test`.ErrorHolder?>.errors: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataColumn> - val org.jetbrains.kotlinx.dataframe.DataRow<`Other advanced test`.ErrorHolder?>.errors: org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.Error?> @JvmName("NullableErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataFrame<`Other advanced test`.Error?> + + public fun readJson(url: java.net.URL): org.jetbrains.kotlinx.dataframe.DataFrame = org.jetbrains.kotlinx.dataframe.DataFrame + .readJson(url, typeClashTactic = ANY_COLUMNS, keyValuePaths = keyValuePaths) + .convertToErrorHolder() """.trimLines() - code shouldBe s - } + code should haveSubstring(errorHolderInterface) - @Test - fun `Other advanced test`() { - val fullFunctionName = ValidFieldName.of(::`Other advanced test`.name) - val functionName = fullFunctionName.quotedIfNeeded - val code = execGeneratedCode(advancedExample, fullFunctionName.unquoted) - .trimLines() + @Language("kt") + val errorHolderExtensions = """ + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ErrorHolder>.errors: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("ErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ErrorHolder>.errors: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.Error> @JvmName("ErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.Error> + val org.jetbrains.kotlinx.dataframe.ColumnsContainer<$functionName.ErrorHolder?>.errors: org.jetbrains.kotlinx.dataframe.DataColumn> @JvmName("NullableErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataColumn> + val org.jetbrains.kotlinx.dataframe.DataRow<$functionName.ErrorHolder?>.errors: org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.Error?> @JvmName("NullableErrorHolder_errors") get() = this["errors"] as org.jetbrains.kotlinx.dataframe.DataFrame<$functionName.Error?> + """.trimLines() + + code should haveSubstring(errorHolderExtensions) @Language("kt") val res1 = execRaw( @@ -1197,6 +1112,7 @@ class OpenApiTests : JupyterReplTestCase() { df2.isNotEmpty().shouldBeTrue() } + @Suppress("LocalVariableName") @Test fun `Jupyter importDataSchema`() { val filePath = apiGuruYaml.absolutePath.let { @@ -1207,7 +1123,7 @@ class OpenApiTests : JupyterReplTestCase() { } } - @Language("kts") + @Language("kt") val _1 = execRaw( """ val ApiGuru = importDataSchema(File("$filePath")) @@ -1216,7 +1132,7 @@ class OpenApiTests : JupyterReplTestCase() { val apiGuruDataTripleQuote = "\"\"\"${apiGuruData.replace("$", "\${'$'}")}\"\"\"" - @Language("kts") + @Language("kt") val _2 = execRaw( """ val df = ApiGuru.APIs.readJsonStr($apiGuruDataTripleQuote) @@ -1226,7 +1142,7 @@ class OpenApiTests : JupyterReplTestCase() { println(_2) - @Language("kts") + @Language("kt") val _3 = execRaw( """ df.filter { @@ -1236,6 +1152,17 @@ class OpenApiTests : JupyterReplTestCase() { } """.trimIndent(), ) as AnyFrame + + @Language("kt") + val _4 = execRaw( + """ + ApiGuru.APIs.readJsonStr($apiGuruDataTripleQuote).filter { + value.versions.value.any { + (updated ?: added).year >= 2021 + } + } + """.trimIndent(), + ) as AnyFrame } private fun String.trimLines(): String = trim().removeSurrounding("\n").lines().joinToString("\n") { it.trim() } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 8758fc62aa..3d63c1fab1 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,11 +1,11 @@ [versions] ksp = "2.0.20-1.0.24" -kotlinJupyter = "0.12.0-139" +kotlinJupyter = "0.12.0-383" ktlint = "12.1.2" # make sure to sync both manually with :generator module -kotlin = "2.0.20" +kotlin = "2.0.20" # needs jupyter compatibility with Kotlin 2.1 to update kotlinpoet = "1.18.1" dokka = "1.9.20" @@ -16,7 +16,7 @@ libsPublisher = "1.9.23-dev-45" dataframe = "0.16.0-dev-5772" korro = "0.1.6" -binaryCompatibilityValidator = "0.16.3" +binaryCompatibilityValidator = "0.17.0" kover = "0.8.3" deephavenCsv = "0.15.0" fastDoubleParser = "2.0.1" @@ -40,19 +40,17 @@ sl4j = "2.0.16" junit = "4.13.2" junit-jupiter = "5.11.3" junit-platform = "1.11.3" - -# TODO 5.8.0 is not possible due to https://github.com/Kotlin/dataframe/issues/595 -kotestAsserions = "5.5.4" +kotestAsserions = "6.0.0.M1" jsoup = "1.18.3" arrow = "18.1.0" kodex = "0.4.2" -simpleGit = "2.0.3" # Can't be updated to 2.1.0+ due to Java 8 compatibility +simpleGit = "2.2.1" dependencyVersions = "0.51.0" plugin-publish = "1.3.0" shadow = "8.3.5" -android-gradle-api = "7.3.1" # Can't be updated to 7.4.0+ due to Java 8 compatibility -ktor = "3.0.1" +android-gradle-api = "7.3.1" # need to revise our tests to update +ktor = "3.0.1" # needs jupyter compatibility with Kotlin 2.1 to update kotlin-compile-testing = "1.6.0" duckdb = "1.1.3" buildconfig = "5.5.1" diff --git a/plugins/keywords-generator/build.gradle.kts b/plugins/keywords-generator/build.gradle.kts index 9a6724724c..efc0369968 100644 --- a/plugins/keywords-generator/build.gradle.kts +++ b/plugins/keywords-generator/build.gradle.kts @@ -1,3 +1,6 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile + plugins { `java-gradle-plugin` `kotlin-dsl` @@ -22,6 +25,20 @@ dependencies { implementation("com.squareup:kotlinpoet:$kotlinPoetVersion") } +kotlin { + jvmToolchain(21) + compilerOptions { + jvmTarget = JvmTarget.JVM_11 + freeCompilerArgs.add("-Xjdk-release=11") + } +} + +tasks.withType { + sourceCompatibility = JavaVersion.VERSION_11.toString() + targetCompatibility = JavaVersion.VERSION_11.toString() + options.release.set(11) +} + gradlePlugin { plugins { create("dependencies") {