Skip to content

Commit 6318036

Browse files
committed
[Compiler plugin] df.convert { }.to<Type>()
1 parent 01d99f6 commit 6318036

File tree

3 files changed

+17
-0
lines changed

3 files changed

+17
-0
lines changed

core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/api/convert.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ public inline fun <T, C, reified R> Convert<T, C?>.notNull(
9494
public class Convert<T, out C>(internal val df: DataFrame<T>, internal val columns: ColumnsSelector<T, C>) {
9595
public fun <R> cast(): Convert<T, R> = Convert(df, columns as ColumnsSelector<T, R>)
9696

97+
@Refine
9798
@Interpretable("To0")
9899
public inline fun <reified D> to(): DataFrame<T> = to(typeOf<D>())
99100

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import org.jetbrains.kotlinx.dataframe.*
2+
import org.jetbrains.kotlinx.dataframe.annotations.*
3+
import org.jetbrains.kotlinx.dataframe.api.*
4+
import org.jetbrains.kotlinx.dataframe.io.*
5+
6+
fun box(): String {
7+
val df = dataFrameOf("col")("1", "2").convert { col }.to<Int>()
8+
val i: Int = df.col[0]
9+
return "OK"
10+
}

plugins/kotlin-dataframe/tests-gen/org/jetbrains/kotlin/fir/dataframe/DataFrameBlackBoxCodegenTestGenerated.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,12 @@ public void testConvertToDataFrame() {
5858
runTest("testData/box/convertToDataFrame.kt");
5959
}
6060

61+
@Test
62+
@TestMetadata("convert_to.kt")
63+
public void testConvert_to() {
64+
runTest("testData/box/convert_to.kt");
65+
}
66+
6167
@Test
6268
@TestMetadata("dataFrameOf.kt")
6369
public void testDataFrameOf() {

0 commit comments

Comments
 (0)