Skip to content

Commit d2ce34c

Browse files
committed
Make convert{}.to{} consistent with replace{}.with{}. Add reified overload for colsOf
1 parent 3d2e59c commit d2ce34c

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,8 @@ public inline fun <reified C> ColumnSet<*>.dfsOf(noinline filter: (ColumnWithPat
358358

359359
public fun ColumnSet<*>.colsOf(type: KType): ColumnSet<Any?> = colsOf(type) { true }
360360

361+
public inline fun <reified C> ColumnSet<*>.colsOf(): ColumnSet<C> = colsOf(typeOf<C>()) as ColumnSet<C>
362+
361363
public fun <C> ColumnSet<*>.colsOf(type: KType, filter: (DataColumn<C>) -> Boolean): ColumnSet<C> =
362364
colsInternal { it.isSubtypeOf(type) && filter(it.cast()) } as ColumnSet<C>
363365

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import kotlinx.datetime.LocalDate
55
import kotlinx.datetime.LocalDateTime
66
import kotlinx.datetime.TimeZone
77
import kotlinx.datetime.toLocalDateTime
8+
import org.jetbrains.kotlinx.dataframe.AnyBaseCol
89
import org.jetbrains.kotlinx.dataframe.AnyCol
910
import org.jetbrains.kotlinx.dataframe.AnyFrame
1011
import org.jetbrains.kotlinx.dataframe.ColumnsSelector
@@ -94,7 +95,7 @@ public inline fun <T, C, reified R> Convert<T, C>.perRowCol(
9495
): DataFrame<T> =
9596
convertRowColumnImpl(typeOf<R>(), infer, expression)
9697

97-
public fun <T, C> Convert<T, C>.to(columnConverter: DataFrame<T>.(DataColumn<C>) -> AnyCol): DataFrame<T> =
98+
public fun <T, C> Convert<T, C>.to(columnConverter: DataFrame<T>.(DataColumn<C>) -> AnyBaseCol): DataFrame<T> =
9899
df.replace(columns).with { columnConverter(df, it) }
99100

100101
public inline fun <reified C> AnyCol.convertTo(): DataColumn<C> = convertTo(typeOf<C>()) as DataColumn<C>

0 commit comments

Comments
 (0)