Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
5e014f4
ground work for recursively()
Jolanrensen Apr 13, 2023
dac8c17
erasing type of transform functions
Jolanrensen Apr 17, 2023
6ae692d
transform: (ColumnSet<*>) -> ColumnSet<*>
Jolanrensen Apr 17, 2023
d1a84a0
SingleColumn<*> in ColumnSelectionDsl. reworked ColumnSelectionDsl tests
Jolanrensen Apr 17, 2023
0e57b94
Merge branch 'master' into dfs-rename2
Jolanrensen Apr 18, 2023
8b0b8a3
Merge branch 'master' into dfs-rename2
Jolanrensen Apr 18, 2023
e9dfab9
poc implemented, needs more tests
Jolanrensen Apr 18, 2023
8fffbd1
fixed duplicate columns, needs more tests
Jolanrensen Apr 18, 2023
25d4821
seems to be working! In the process of converting dfs usage to recurs…
Jolanrensen Apr 20, 2023
d1f584d
converted most if not all dfs usage to recursively
Jolanrensen Apr 20, 2023
149e96f
docs for cols and all
Jolanrensen Apr 21, 2023
da89e93
first {}.recursively now seems to work. Why, I'm not sure. Needs more…
Jolanrensen Apr 21, 2023
2d08793
getAt
Jolanrensen Apr 22, 2023
e3a115b
3rd attempt, now with different return-type, similar to the first dfs…
Jolanrensen Apr 22, 2023
2dddcc0
children
Jolanrensen Apr 22, 2023
a47f67e
TransformableColumnSet and TransformableSingleColumn are now generali…
Jolanrensen Apr 24, 2023
4bf8219
dfs -> allChildren
Jolanrensen Apr 24, 2023
efb8a04
Merge branch 'master' into dfs-rename3
Jolanrensen Apr 25, 2023
f94b252
adding allRecursively again, docs and cleaning
Jolanrensen Apr 25, 2023
7c41875
removed ColumnPath overloads, fixed groups, added docs for allRec and…
Jolanrensen Apr 26, 2023
8c16478
linting
Jolanrensen Apr 26, 2023
d79ed97
updated korro correctly
Jolanrensen Apr 26, 2023
52b42ca
Merge branch 'master' into dfs-rename3
Jolanrensen Apr 26, 2023
f49f0cd
merged with master and updated docs to include allRecursively
Jolanrensen Apr 26, 2023
79e7652
Merge branch 'master' into dfs-rename3
Jolanrensen May 4, 2023
29975f5
updating after first round of reviews
Jolanrensen May 4, 2023
b4484f5
made renameToCamelCase clearer
Jolanrensen May 5, 2023
06ccc7b
removing includeGroups param from recursively
Jolanrensen May 5, 2023
95818f5
Merge branch 'master' into dfs-rename3
Jolanrensen May 5, 2023
3aa7c0d
updating with korro
Jolanrensen May 5, 2023
b42cc5d
added auto add-to-git for copySamplesOutputs task, reran korro
Jolanrensen May 5, 2023
b085905
fixed korro deleting snippets files at a rerun
Jolanrensen May 5, 2023
d21934b
removed allRecursively and boolean arguments for recursively
Jolanrensen May 9, 2023
9f40e89
Merge branch 'master' into dfs-rename3
Jolanrensen May 10, 2023
5bf8463
Merge branch 'master' into dfs-rename3
Jolanrensen May 22, 2023
9fdd5e3
updated from master
Jolanrensen May 22, 2023
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
SingleColumn<*> in ColumnSelectionDsl. reworked ColumnSelectionDsl tests
  • Loading branch information
Jolanrensen committed Apr 17, 2023
commit d1a84a06cb015bb7a587ac5d36cd4a652f43bc8f
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @throws [NoSuchElementException] if no column adheres to the given [condition].
* @see [last]
*/
public fun SingleColumn<AnyRow>.first(condition: ColumnFilter<*> = { true }): SingleColumn<*> =
public fun SingleColumn<*>.first(condition: ColumnFilter<*> = { true }): SingleColumn<*> =
all().first(condition)

/**
Expand Down Expand Up @@ -388,7 +388,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @throws [NoSuchElementException] if no column adheres to the given [condition].
* @see [first]
*/
public fun SingleColumn<AnyRow>.last(condition: ColumnFilter<*> = { true }): SingleColumn<*> =
public fun SingleColumn<*>.last(condition: ColumnFilter<*> = { true }): SingleColumn<*> =
all().last(condition)

/**
Expand Down Expand Up @@ -491,7 +491,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @throws [NoSuchElementException] if no column adheres to the given [condition].
* @throws [IllegalArgumentException] if more than one column adheres to the given [condition].
*/
public fun SingleColumn<AnyRow>.single(condition: ColumnFilter<*> = { true }): SingleColumn<*> =
public fun SingleColumn<*>.single(condition: ColumnFilter<*> = { true }): SingleColumn<*> =
all().single(condition)

/**
Expand Down Expand Up @@ -1053,7 +1053,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
*/
public fun <C> ColumnGroupReference.col(property: KProperty<C>): ColumnAccessor<C> = column(property)

public fun SingleColumn<AnyRow>.col(index: Int): SingleColumn<Any?> = getChildrenAt(index).singleImpl()
public fun SingleColumn<*>.col(index: Int): SingleColumn<Any?> = getChildrenAt(index).singleImpl()

public operator fun <C> ColumnSet<C>.get(index: Int): SingleColumn<C> = getAt(index)

Expand Down Expand Up @@ -1946,7 +1946,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [predicate] A [ColumnFilter function][org.jetbrains.kotlinx.dataframe.ColumnFilter] that takes a [ColumnReference][org.jetbrains.kotlinx.dataframe.columns.ColumnReference] and returns a [Boolean].
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that match the given [predicate].
*/
public fun SingleColumn<AnyRow>.cols(
public fun SingleColumn<*>.cols(
predicate: ColumnFilter<*> = { true },
): ColumnSet<*> = colsInternal(predicate)

Expand Down Expand Up @@ -1992,7 +1992,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [predicate] A [ColumnFilter function][org.jetbrains.kotlinx.dataframe.ColumnFilter] that takes a [ColumnReference][org.jetbrains.kotlinx.dataframe.columns.ColumnReference] and returns a [Boolean].
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that match the given [predicate].
*/
public operator fun SingleColumn<AnyRow>.get(
public operator fun SingleColumn<*>.get(
predicate: ColumnFilter<*> = { true },
): ColumnSet<Any?> = cols(predicate)

Expand Down Expand Up @@ -2479,7 +2479,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [otherCols] Optional additional [ColumnReference][org.jetbrains.kotlinx.dataframe.columns.ColumnReference]s that point to columns.
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that [firstCol] and [otherCols] point to.
*/
public fun <C> SingleColumn<AnyRow>.cols(
public fun <C> SingleColumn<*>.cols(
firstCol: ColumnReference<C>,
vararg otherCols: ColumnReference<C>,
): ColumnSet<C> = headPlusArray(firstCol, otherCols).let { refs ->
Expand Down Expand Up @@ -2524,7 +2524,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [otherCols] Optional additional [ColumnReference][org.jetbrains.kotlinx.dataframe.columns.ColumnReference]s that point to columns.
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that [firstCol] and [otherCols] point to.
*/
public operator fun <C> SingleColumn<AnyRow>.get(
public operator fun <C> SingleColumn<*>.get(
firstCol: ColumnReference<C>,
vararg otherCols: ColumnReference<C>,
): ColumnSet<C> = cols(firstCol, *otherCols)
Expand Down Expand Up @@ -2989,7 +2989,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [otherCols] Optional additional [String]s that point to columns.
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that [firstCol] and [otherCols] point to.
*/
public fun SingleColumn<AnyRow>.cols(
public fun SingleColumn<*>.cols(
firstCol: String,
vararg otherCols: String,
): ColumnSet<*> = headPlusArray(firstCol, otherCols).let { names ->
Expand Down Expand Up @@ -3030,7 +3030,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [otherCols] Optional additional [String]s that point to columns.
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that [firstCol] and [otherCols] point to.
*/
public operator fun SingleColumn<AnyRow>.get(
public operator fun SingleColumn<*>.get(
firstCol: String,
vararg otherCols: String,
): ColumnSet<*> = cols(firstCol, *otherCols)
Expand Down Expand Up @@ -3471,7 +3471,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [otherCols] Optional additional [KProperty]s that point to columns.
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that [firstCol] and [otherCols] point to.
*/
public fun <C> SingleColumn<AnyRow>.cols(
public fun <C> SingleColumn<*>.cols(
firstCol: KProperty<C>,
vararg otherCols: KProperty<C>,
): ColumnSet<C> = headPlusArray(firstCol, otherCols).let { props ->
Expand Down Expand Up @@ -3508,7 +3508,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
* @param [otherCols] Optional additional [KProperty]s that point to columns.
* @return A [ColumnSet][org.jetbrains.kotlinx.dataframe.columns.ColumnSet] containing the columns that [firstCol] and [otherCols] point to.
*/
public operator fun <C> SingleColumn<AnyRow>.get(
public operator fun <C> SingleColumn<*>.get(
firstCol: KProperty<C>,
vararg otherCols: KProperty<C>,
): ColumnSet<C> = cols(firstCol, *otherCols)
Expand Down Expand Up @@ -3806,7 +3806,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
vararg otherIndices: Int,
): ColumnSet<C> = cols(firstIndex, *otherIndices)

public fun SingleColumn<AnyRow>.cols(
public fun SingleColumn<*>.cols(
firstIndex: Int,
vararg otherIndices: Int,
): ColumnSet<*> = headPlusArray(firstIndex, otherIndices).let { indices ->
Expand All @@ -3816,7 +3816,7 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
/**
*
*/
public operator fun SingleColumn<AnyRow>.get(
public operator fun SingleColumn<*>.get(
firstIndex: Int,
vararg otherIndices: Int,
): ColumnSet<*> = cols(firstIndex, *otherIndices)
Expand Down Expand Up @@ -3866,13 +3866,13 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum

public operator fun <C> ColumnSet<C>.get(range: IntRange): ColumnSet<C> = cols(range)

public fun SingleColumn<AnyRow>.cols(range: IntRange): ColumnSet<*> =
public fun SingleColumn<*>.cols(range: IntRange): ColumnSet<*> =
transform { it.flatMap { it.children().subList(range.first, range.last + 1) } }

/**
*
*/
public operator fun SingleColumn<AnyRow>.get(range: IntRange): ColumnSet<*> = cols(range)
public operator fun SingleColumn<*>.get(range: IntRange): ColumnSet<*> = cols(range)

public fun String.cols(range: IntRange): ColumnSet<*> = colGroup(this).cols(range)

Expand Down Expand Up @@ -3914,21 +3914,21 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum

@Deprecated(
message = "dfs is deprecated, use recursively instead.",
replaceWith = ReplaceWith("this.cols(predicate).recursively()"),
replaceWith = ReplaceWith("this.cols(predicate).recursively(includeTopLevel = false)"),
level = DeprecationLevel.WARNING,
)
public fun <C> ColumnSet<C>.dfs(predicate: (ColumnWithPath<*>) -> Boolean): ColumnSet<Any?> = dfsInternal(predicate)

@Deprecated(
message = "dfs is deprecated, use recursively instead.",
replaceWith = ReplaceWith("this.cols(predicate).recursively()"),
replaceWith = ReplaceWith("this.cols(predicate).recursively(includeTopLevel = false)"),
level = DeprecationLevel.WARNING,
)
public fun String.dfs(predicate: (ColumnWithPath<*>) -> Boolean): ColumnSet<*> = toColumnAccessor().dfs(predicate)

@Deprecated(
message = "dfs is deprecated, use recursively instead.",
replaceWith = ReplaceWith("this.cols(predicate).recursively()"),
replaceWith = ReplaceWith("this.cols(predicate).recursively(includeTopLevel = false)"),
level = DeprecationLevel.WARNING,
)
public fun <C> KProperty<C>.dfs(predicate: (ColumnWithPath<*>) -> Boolean): ColumnSet<*> =
Expand All @@ -3949,32 +3949,51 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum

@Deprecated(
message = "allDfs is deprecated, use recursively instead.",
replaceWith = ReplaceWith("this.all().recursively(includeGroups)"),
replaceWith = ReplaceWith("this.all().recursively(includeGroups = includeGroups, includeTopLevel = false)"),
level = DeprecationLevel.WARNING,
)
public fun ColumnSet<*>.allDfs(includeGroups: Boolean = false): ColumnSet<Any?> =
if (includeGroups) dfs { true } else dfs { !it.isColumnGroup() }

@Deprecated(
message = "allDfs is deprecated, use recursively instead.",
replaceWith = ReplaceWith("this.all().recursively(includeGroups)"),
replaceWith = ReplaceWith("this.all().recursively(includeGroups = includeGroups, includeTopLevel = false)"),
level = DeprecationLevel.WARNING,
)
public fun String.allDfs(includeGroups: Boolean = false): ColumnSet<Any?> = toColumnAccessor().allDfs(includeGroups)

@Deprecated(
message = "allDfs is deprecated, use recursively instead.",
replaceWith = ReplaceWith("this.all().recursively(includeGroups)"),
replaceWith = ReplaceWith("this.all().recursively(includeGroups = includeGroups, includeTopLevel = false)"),
level = DeprecationLevel.WARNING,
)
public fun KProperty<*>.allDfs(includeGroups: Boolean = false): ColumnSet<Any?> =
toColumnAccessor().allDfs(includeGroups)

public fun <C> ColumnSet<C>.recursively(includeGroups: Boolean = true): ColumnSet<C> = object : ColumnSet<C> {
/**
* Modifies the previous call to run not only on the current column set, but also on all of its children.
*
* For example:
*
* `df.`[select][DataFrame.select]` { `[colsOf][ColumnSet.colsOf]`<`[String][String]`>() }`
*
* returns all columns of type [String] in the top-level, as expected. However, what if you want ALL
* columns of type [String] even if they are inside a nested column group? Then you can use [recursively]:
*
* `df.`[select][DataFrame.select]` { `[colsOf][ColumnSet.colsOf]`<`[String][String]`>().`[recursively][ColumnSet.recursively]`() }`
*
* This will return all columns of type [String] in lower levels (unless [includeTopLevel]` == true`).
*
* TODO
*/
public fun <C> ColumnSet<C>.recursively(
includeGroups: Boolean = true,
includeTopLevel: Boolean = true,
): ColumnSet<C> = object : ColumnSet<C> {

private fun flatten(columnSet: ColumnSet<*>): ColumnSet<*> = columnSet.transform { list ->
list
.filter { it.isColumnGroup() } // TODO should I include this from dfs?
.filter { includeTopLevel || it.isColumnGroup() } // TODO should I include this from dfs?
.flatMap {
it.children()
.dfs()
Expand All @@ -3984,8 +4003,9 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum

override fun resolve(
context: ColumnResolutionContext,
): List<ColumnWithPath<C>> = this@recursively
.resolveAfterTransform(context = context, transform = ::flatten)
): List<ColumnWithPath<C>> =
this@recursively
.resolveAfterTransform(context = context, transform = ::flatten)

override fun resolveAfterTransform(
context: ColumnResolutionContext,
Expand All @@ -3995,13 +4015,22 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
.resolveAfterTransform(context = context, transform = ::flatten)
}

public fun <C> ColumnSet<C>.rec(includeGroups: Boolean = true): ColumnSet<C> = recursively(includeGroups)
public fun <C> ColumnSet<C>.rec(
includeGroups: Boolean = true,
includeTopLevel: Boolean = true,
): ColumnSet<C> = recursively(includeTopLevel = includeTopLevel, includeGroups = includeGroups)

public fun <C> ColumnSet<C>.allRecursively(includeGroups: Boolean = true): ColumnSet<C> =
wrap().recursively(includeGroups = includeGroups)
public fun <C> ColumnSet<C>.allRecursively(
includeGroups: Boolean = true,
includeTopLevel: Boolean = true,
): ColumnSet<C> =
wrap().recursively(includeTopLevel = includeTopLevel, includeGroups = includeGroups)

public fun <C> ColumnSet<C>.allRec(includeGroups: Boolean = true): ColumnSet<C> =
allRecursively(includeGroups = includeGroups)
public fun <C> ColumnSet<C>.allRec(
includeGroups: Boolean = true,
includeTopLevel: Boolean = true,
): ColumnSet<C> =
allRecursively(includeTopLevel = includeTopLevel, includeGroups = includeGroups)


// endregion
Expand Down Expand Up @@ -4161,10 +4190,10 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
public operator fun <C> List<DataColumn<C>>.get(range: IntRange): ColumnSet<C> =
ColumnsList(subList(range.first, range.last + 1))

public fun SingleColumn<AnyRow>.take(n: Int): ColumnSet<*> = transformSingle { it.children().take(n) }
public fun SingleColumn<AnyRow>.takeLast(n: Int): ColumnSet<*> = transformSingle { it.children().takeLast(n) }
public fun SingleColumn<AnyRow>.drop(n: Int): ColumnSet<*> = transformSingle { it.children().drop(n) }
public fun SingleColumn<AnyRow>.dropLast(n: Int = 1): ColumnSet<*> = transformSingle { it.children().dropLast(n) }
public fun SingleColumn<*>.take(n: Int): ColumnSet<*> = transformSingle { it.children().take(n) }
public fun SingleColumn<*>.takeLast(n: Int): ColumnSet<*> = transformSingle { it.children().takeLast(n) }
public fun SingleColumn<*>.drop(n: Int): ColumnSet<*> = transformSingle { it.children().drop(n) }
public fun SingleColumn<*>.dropLast(n: Int = 1): ColumnSet<*> = transformSingle { it.children().dropLast(n) }

public fun <C> ColumnSet<C>.drop(n: Int): ColumnSet<C> = transform { it.drop(n) }
public fun <C> ColumnSet<C>.take(n: Int): ColumnSet<C> = transform { it.take(n) }
Expand All @@ -4180,13 +4209,13 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum
public fun <C> ColumnSet<C>.filter(predicate: Predicate<ColumnWithPath<C>>): ColumnSet<C> =
transform { it.filter(predicate) }

public fun SingleColumn<AnyRow>.nameContains(text: CharSequence): ColumnSet<*> = cols { it.name.contains(text) }
public fun SingleColumn<*>.nameContains(text: CharSequence): ColumnSet<*> = cols { it.name.contains(text) }
public fun <C> ColumnSet<C>.nameContains(text: CharSequence): ColumnSet<C> = cols { it.name.contains(text) }
public fun SingleColumn<AnyRow>.nameContains(regex: Regex): ColumnSet<*> = cols { it.name.contains(regex) }
public fun SingleColumn<*>.nameContains(regex: Regex): ColumnSet<*> = cols { it.name.contains(regex) }
public fun <C> ColumnSet<C>.nameContains(regex: Regex): ColumnSet<C> = cols { it.name.contains(regex) }
public fun SingleColumn<AnyRow>.startsWith(prefix: CharSequence): ColumnSet<*> = cols { it.name.startsWith(prefix) }
public fun SingleColumn<*>.startsWith(prefix: CharSequence): ColumnSet<*> = cols { it.name.startsWith(prefix) }
public fun <C> ColumnSet<C>.startsWith(prefix: CharSequence): ColumnSet<C> = cols { it.name.startsWith(prefix) }
public fun SingleColumn<AnyRow>.endsWith(suffix: CharSequence): ColumnSet<*> = cols { it.name.endsWith(suffix) }
public fun SingleColumn<*>.endsWith(suffix: CharSequence): ColumnSet<*> = cols { it.name.endsWith(suffix) }
public fun <C> ColumnSet<C>.endsWith(suffix: CharSequence): ColumnSet<C> = cols { it.name.endsWith(suffix) }

public fun <C> ColumnSet<C>.except(vararg other: ColumnSet<*>): ColumnSet<*> = except(other.toColumnSet())
Expand Down Expand Up @@ -4277,9 +4306,25 @@ public interface ColumnsSelectionDsl<out T> : ColumnSelectionDsl<T>, SingleColum

public fun <C> ColumnSet<C>.distinct(): ColumnSet<C> = DistinctColumnSet(this)

@Deprecated(
message = "Use recursively() instead",
replaceWith = ReplaceWith(
"this.colsOf(type, predicate).recursively(includeTopLevel = false)",
"org.jetbrains.kotlinx.dataframe.columns.recursively",
"org.jetbrains.kotlinx.dataframe.api.colsOf",
),
)
public fun <C> String.dfsOf(type: KType, predicate: (ColumnWithPath<C>) -> Boolean = { true }): ColumnSet<*> =
toColumnAccessor().dfsOf(type, predicate)

@Deprecated(
message = "Use recursively() instead",
replaceWith = ReplaceWith(
"this.colsOf(type, predicate).recursively(includeTopLevel = false)",
"org.jetbrains.kotlinx.dataframe.columns.recursively",
"org.jetbrains.kotlinx.dataframe.api.colsOf",
),
)
public fun <C> KProperty<*>.dfsOf(type: KType, predicate: (ColumnWithPath<C>) -> Boolean = { true }): ColumnSet<*> =
toColumnAccessor().dfsOf(type, predicate)

Expand Down Expand Up @@ -4398,8 +4443,7 @@ internal fun ColumnSet<*>.dfsInternal(predicate: (ColumnWithPath<*>) -> Boolean)
@Deprecated(
message = "Use recursively() instead",
replaceWith = ReplaceWith(
"this.colsOf(type, predicate).recursively()",
"org.jetbrains.kotlinx.dataframe.columns.recursively",
"this.colsOf(type, predicate).recursively(includeTopLevel = false)",
"org.jetbrains.kotlinx.dataframe.columns.recursively",
"org.jetbrains.kotlinx.dataframe.api.colsOf",
),
Expand All @@ -4410,7 +4454,7 @@ public fun <C> ColumnSet<*>.dfsOf(type: KType, predicate: (ColumnWithPath<C>) ->
@Deprecated(
message = "Use recursively() instead",
replaceWith = ReplaceWith(
"this.colsOf<C>(filter).recursively()",
"this.colsOf<C>(filter).recursively(includeTopLevel = false)",
"org.jetbrains.kotlinx.dataframe.columns.recursively",
"org.jetbrains.kotlinx.dataframe.api.colsOf",
),
Expand Down
Loading