Skip to content

Commit 3c0a96c

Browse files
improve syntax
1 parent 98cac42 commit 3c0a96c

File tree

1 file changed

+18
-16
lines changed
  • core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/impl/api

1 file changed

+18
-16
lines changed

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

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import org.jetbrains.kotlinx.dataframe.api.getColumnGroup
1515
import org.jetbrains.kotlinx.dataframe.api.getColumnWithPath
1616
import org.jetbrains.kotlinx.dataframe.api.getColumns
1717
import org.jetbrains.kotlinx.dataframe.api.move
18-
import org.jetbrains.kotlinx.dataframe.api.toColumnAccessor
1918
import org.jetbrains.kotlinx.dataframe.api.toDataFrame
2019
import org.jetbrains.kotlinx.dataframe.columns.ColumnPath
2120
import org.jetbrains.kotlinx.dataframe.columns.ColumnWithPath
@@ -26,7 +25,6 @@ import org.jetbrains.kotlinx.dataframe.impl.asList
2625
import org.jetbrains.kotlinx.dataframe.impl.columns.toColumnWithPath
2726
import org.jetbrains.kotlinx.dataframe.impl.columns.tree.ColumnPosition
2827
import org.jetbrains.kotlinx.dataframe.impl.columns.tree.getOrPut
29-
import org.jetbrains.kotlinx.dataframe.indices
3028
import org.jetbrains.kotlinx.dataframe.path
3129

3230
internal fun <T, C> MoveClause<T, C>.afterOrBefore(column: ColumnSelector<T, *>, isAfter: Boolean): DataFrame<T> {
@@ -181,19 +179,23 @@ internal fun <T, C> MoveClause<T, C>.moveToImpl(columnIndex: Int, insideGroup: B
181179
}
182180

183181
// move columns
184-
if (columnsBeforeReferenceToMove.isNotEmpty() && columnsAfterReferenceToMove.isNotEmpty()) {
185-
val intermediateDf = df.move { columnsBeforeReferenceToMove.toColumnSet() }.after { reference }
186-
val newReference = columnsBeforeReferenceToMove.last()
187-
val finalDf = intermediateDf.move { columnsAfterReferenceToMove.toColumnSet() }.after { newReference }
188-
return finalDf
189-
}
190-
if (columnsBeforeReferenceToMove.isNotEmpty()) {
191-
return df.move { columnsBeforeReferenceToMove.toColumnSet() }.after { reference }
192-
}
193-
if (columnsAfterReferenceToMove.isNotEmpty()) {
194-
return df.move { columnsAfterReferenceToMove.toColumnSet() }.before { reference }
195-
}
182+
when {
183+
columnsBeforeReferenceToMove.isNotEmpty() && columnsAfterReferenceToMove.isNotEmpty() -> {
184+
val intermediateDf = df.move { columnsBeforeReferenceToMove.toColumnSet() }.after { reference }
185+
val newReference = columnsBeforeReferenceToMove.last()
186+
val finalDf = intermediateDf.move { columnsAfterReferenceToMove.toColumnSet() }.after { newReference }
187+
return finalDf
188+
}
196189

197-
// if it is not needed to move any of the nested columns
198-
return df
190+
columnsBeforeReferenceToMove.isNotEmpty() -> {
191+
return df.move { columnsBeforeReferenceToMove.toColumnSet() }.after { reference }
192+
}
193+
194+
columnsAfterReferenceToMove.isNotEmpty() -> {
195+
return df.move { columnsAfterReferenceToMove.toColumnSet() }.before { reference }
196+
}
197+
198+
// if it is not needed to move any of the nested columns
199+
else -> return df
200+
}
199201
}

0 commit comments

Comments
 (0)