Skip to content

Move toLeft -> toStart, toRight -> toEnd, add move KDocs #1071

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Feb 24, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions core/api/core.api
Original file line number Diff line number Diff line change
Expand Up @@ -6277,6 +6277,10 @@ public final class org/jetbrains/kotlinx/dataframe/api/MoveKt {
public static final fun moveTo (Lorg/jetbrains/kotlinx/dataframe/DataFrame;I[Ljava/lang/String;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveTo (Lorg/jetbrains/kotlinx/dataframe/DataFrame;I[Lkotlin/reflect/KProperty;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveTo (Lorg/jetbrains/kotlinx/dataframe/DataFrame;I[Lorg/jetbrains/kotlinx/dataframe/columns/ColumnReference;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToEnd (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Lkotlin/jvm/functions/Function2;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToEnd (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Ljava/lang/String;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToEnd (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lkotlin/reflect/KProperty;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToEnd (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lorg/jetbrains/kotlinx/dataframe/columns/ColumnReference;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToLeft (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Lkotlin/jvm/functions/Function2;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToLeft (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Ljava/lang/String;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToLeft (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lkotlin/reflect/KProperty;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
Expand All @@ -6285,9 +6289,15 @@ public final class org/jetbrains/kotlinx/dataframe/api/MoveKt {
public static final fun moveToRight (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Ljava/lang/String;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToRight (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lkotlin/reflect/KProperty;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToRight (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lorg/jetbrains/kotlinx/dataframe/columns/ColumnReference;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToStart (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Lkotlin/jvm/functions/Function2;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToStart (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Ljava/lang/String;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToStart (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lkotlin/reflect/KProperty;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun moveToStart (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lorg/jetbrains/kotlinx/dataframe/columns/ColumnReference;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun to (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;I)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun toEnd (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun toLeft (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun toRight (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun toStart (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun toTop (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;Lkotlin/jvm/functions/Function2;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static synthetic fun toTop$default (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun under (Lorg/jetbrains/kotlinx/dataframe/api/MoveClause;Ljava/lang/String;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import org.jetbrains.kotlinx.dataframe.annotations.Interpretable
import org.jetbrains.kotlinx.dataframe.annotations.Refine
import org.jetbrains.kotlinx.dataframe.columns.ColumnReference
import org.jetbrains.kotlinx.dataframe.columns.toColumnSet
import org.jetbrains.kotlinx.dataframe.documentation.DocumentationUrls.Select
import org.jetbrains.kotlinx.dataframe.impl.api.removeImpl
import org.jetbrains.kotlinx.dataframe.util.MINUS
import org.jetbrains.kotlinx.dataframe.util.MINUS_REPLACE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,18 @@ internal const val IS_URL_IMPORT = "org.jetbrains.kotlinx.dataframe.io.isUrl"
internal const val MINUS = "This minus overload will be removed in favor of `remove`. $MESSAGE_0_16"
internal const val MINUS_REPLACE = "this.remove(columns)"

internal const val MOVE_TO_LEFT = "This `moveToLeft` overload will be removed in favor of `moveToStart`. $MESSAGE_0_16"
internal const val MOVE_TO_LEFT_REPLACE = "this.moveToStart(columns)"

internal const val MOVE_TO_RIGHT = "This `moveToRight` overload will be removed in favor of `moveToEnd`. $MESSAGE_0_16"
internal const val MOVE_TO_RIGHT_REPLACE = "this.moveToEnd(columns)"

internal const val TO_LEFT = "This `toLeft` overload will be removed in favor of `toStart`. $MESSAGE_0_16"
internal const val TO_LEFT_REPLACE = "this.toStart()"

internal const val TO_RIGHT = "This `toRight` overload will be removed in favor of `toEnd`. $MESSAGE_0_16"
internal const val TO_RIGHT_REPLACE = "this.toEnd()"

// endregion

// region WARNING in 0.16, ERROR in 0.17
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ import org.jetbrains.kotlinx.dataframe.api.split
import org.jetbrains.kotlinx.dataframe.api.sum
import org.jetbrains.kotlinx.dataframe.api.to
import org.jetbrains.kotlinx.dataframe.api.toFloat
import org.jetbrains.kotlinx.dataframe.api.toLeft
import org.jetbrains.kotlinx.dataframe.api.toStart
import org.jetbrains.kotlinx.dataframe.api.toMap
import org.jetbrains.kotlinx.dataframe.api.toPath
import org.jetbrains.kotlinx.dataframe.api.toTop
Expand All @@ -114,7 +114,6 @@ import org.junit.Test
import java.net.URL
import java.time.format.DateTimeFormatter
import java.util.*
import kotlin.streams.toList

@Suppress("ktlint:standard:chain-method-continuation", "ktlint:standard:argument-list-wrapping")
class Modify : TestBase() {
Expand Down Expand Up @@ -340,7 +339,7 @@ class Modify : TestBase() {
@TransformDataFrameExpressions
fun move() {
// SampleStart
df.move { age }.toLeft()
df.move { age }.toStart()

df.move { weight }.to(1)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@ import org.jetbrains.kotlinx.dataframe.api.minOf
import org.jetbrains.kotlinx.dataframe.api.minus
import org.jetbrains.kotlinx.dataframe.api.move
import org.jetbrains.kotlinx.dataframe.api.moveTo
import org.jetbrains.kotlinx.dataframe.api.moveToLeft
import org.jetbrains.kotlinx.dataframe.api.moveToRight
import org.jetbrains.kotlinx.dataframe.api.moveToEnd
import org.jetbrains.kotlinx.dataframe.api.moveToStart
import org.jetbrains.kotlinx.dataframe.api.name
import org.jetbrains.kotlinx.dataframe.api.named
import org.jetbrains.kotlinx.dataframe.api.notNull
Expand Down Expand Up @@ -142,11 +142,11 @@ import org.jetbrains.kotlinx.dataframe.api.toColumnAccessor
import org.jetbrains.kotlinx.dataframe.api.toColumnOf
import org.jetbrains.kotlinx.dataframe.api.toDataFrame
import org.jetbrains.kotlinx.dataframe.api.toDouble
import org.jetbrains.kotlinx.dataframe.api.toEnd
import org.jetbrains.kotlinx.dataframe.api.toInt
import org.jetbrains.kotlinx.dataframe.api.toList
import org.jetbrains.kotlinx.dataframe.api.toListOf
import org.jetbrains.kotlinx.dataframe.api.toMap
import org.jetbrains.kotlinx.dataframe.api.toRight
import org.jetbrains.kotlinx.dataframe.api.toStr
import org.jetbrains.kotlinx.dataframe.api.toValueColumn
import org.jetbrains.kotlinx.dataframe.api.transpose
Expand Down Expand Up @@ -689,14 +689,14 @@ class DataFrameTests : BaseTest() {

@Test
fun `move several columns to left`() {
val moved = typed.moveToLeft { weight and age }
val moved = typed.moveToStart { weight and age }
val expected = typed.select { cols(weight, age, name, city) }
moved shouldBe expected
}

@Test
fun `move several columns to right`() {
val moved = typed.moveToRight { weight and name }
val moved = typed.moveToEnd { weight and name }
val expected = typed.select { cols(age, city, weight, name) }
moved shouldBe expected
}
Expand Down Expand Up @@ -1130,7 +1130,7 @@ class DataFrameTests : BaseTest() {
val cities = filtered.city.toList().map { it!!.lowercase() }
val gathered =
res.gather { colsOf<Boolean> { cities.contains(it.name()) } }.where { it }.keysInto("city")
val expected = filtered.select { name and age and city.map { it!!.lowercase() } }.moveToRight { city }
val expected = filtered.select { name and age and city.map { it!!.lowercase() } }.moveToEnd { city }
gathered shouldBe expected
}

Expand Down Expand Up @@ -2273,7 +2273,7 @@ class DataFrameTests : BaseTest() {

df.remove { city }.convertTo<Target>() shouldBe
df.update { city }.withNull()
.move { city }.toRight()
.move { city }.toEnd()

shouldThrow<IllegalArgumentException> {
df.remove { age }.convertTo<Target>()
Expand All @@ -2283,7 +2283,7 @@ class DataFrameTests : BaseTest() {
fill { age }.with { -1 }
} shouldBe
df.update { age }.with { -1 }
.move { age }.toRight()
.move { age }.toEnd()

shouldThrow<TypeConversionException> {
df.update { name }.at(2).withNull()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@ import org.jetbrains.kotlinx.dataframe.api.maxBy
import org.jetbrains.kotlinx.dataframe.api.median
import org.jetbrains.kotlinx.dataframe.api.move
import org.jetbrains.kotlinx.dataframe.api.moveTo
import org.jetbrains.kotlinx.dataframe.api.moveToLeft
import org.jetbrains.kotlinx.dataframe.api.moveToRight
import org.jetbrains.kotlinx.dataframe.api.moveToEnd
import org.jetbrains.kotlinx.dataframe.api.moveToStart
import org.jetbrains.kotlinx.dataframe.api.pathOf
import org.jetbrains.kotlinx.dataframe.api.perRowCol
import org.jetbrains.kotlinx.dataframe.api.pivot
Expand Down Expand Up @@ -554,7 +554,7 @@ class DataFrameTreeTests : BaseTest() {
.remove { it[groupCol]["city"] }
.ungroup(groupCol)
.sortBy { name and age }
res shouldBe typed.sortBy { name and age }.moveToLeft { city }
res shouldBe typed.sortBy { name and age }.moveToStart { city }
}

@Test
Expand All @@ -567,7 +567,7 @@ class DataFrameTreeTests : BaseTest() {
.remove { it[groupCol]["city"] }
.ungroup(groupCol)
.sortBy { name and age }
res shouldBe typed.sortBy { name and age }.moveToLeft { city }
res shouldBe typed.sortBy { name and age }.moveToStart { city }
}

@Test
Expand All @@ -592,7 +592,7 @@ class DataFrameTreeTests : BaseTest() {
@Test
fun `join with right path`() {
val joined = typed.remove { city }.join(typed2.remove { weight }) { name.match(right.nameAndCity.name) and age }
val expected = typed.moveToRight { city }.move { city }.under("nameAndCity")
val expected = typed.moveToEnd { city }.move { city }.under("nameAndCity")
joined shouldBe expected
}

Expand Down
Loading
Loading