Skip to content

Commit 935135c

Browse files
authored
Merge pull request #473 from ermolenkodev/KTNB-366
Add the missing renderers for the bunch of intermediate objects
2 parents 71ab27a + a668901 commit 935135c

File tree

2 files changed

+40
-0
lines changed
  • core
    • generated-sources/src/main/kotlin/org/jetbrains/kotlinx/dataframe/jupyter
    • src/main/kotlin/org/jetbrains/kotlinx/dataframe/jupyter

2 files changed

+40
-0
lines changed

core/generated-sources/src/main/kotlin/org/jetbrains/kotlinx/dataframe/jupyter/Integration.kt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,27 @@ import org.jetbrains.kotlinx.dataframe.DataFrame
1010
import org.jetbrains.kotlinx.dataframe.DataRow
1111
import org.jetbrains.kotlinx.dataframe.annotations.DataSchema
1212
import org.jetbrains.kotlinx.dataframe.api.Convert
13+
import org.jetbrains.kotlinx.dataframe.api.FormatClause
1314
import org.jetbrains.kotlinx.dataframe.api.FormattedFrame
1415
import org.jetbrains.kotlinx.dataframe.api.Gather
1516
import org.jetbrains.kotlinx.dataframe.api.GroupBy
17+
import org.jetbrains.kotlinx.dataframe.api.GroupClause
18+
import org.jetbrains.kotlinx.dataframe.api.InsertClause
1619
import org.jetbrains.kotlinx.dataframe.api.Merge
20+
import org.jetbrains.kotlinx.dataframe.api.MoveClause
1721
import org.jetbrains.kotlinx.dataframe.api.Pivot
1822
import org.jetbrains.kotlinx.dataframe.api.PivotGroupBy
1923
import org.jetbrains.kotlinx.dataframe.api.ReducedGroupBy
2024
import org.jetbrains.kotlinx.dataframe.api.ReducedPivot
2125
import org.jetbrains.kotlinx.dataframe.api.ReducedPivotGroupBy
26+
import org.jetbrains.kotlinx.dataframe.api.RenameClause
27+
import org.jetbrains.kotlinx.dataframe.api.ReplaceClause
2228
import org.jetbrains.kotlinx.dataframe.api.Split
2329
import org.jetbrains.kotlinx.dataframe.api.SplitWithTransform
2430
import org.jetbrains.kotlinx.dataframe.api.Update
2531
import org.jetbrains.kotlinx.dataframe.api.asColumnGroup
2632
import org.jetbrains.kotlinx.dataframe.api.asDataFrame
33+
import org.jetbrains.kotlinx.dataframe.api.at
2734
import org.jetbrains.kotlinx.dataframe.api.columnsCount
2835
import org.jetbrains.kotlinx.dataframe.api.dataFrameOf
2936
import org.jetbrains.kotlinx.dataframe.api.frames
@@ -215,6 +222,13 @@ internal class Integration(
215222
applyRowsLimit = false
216223
)
217224

225+
render<GroupClause<*, *>>({ "Group" })
226+
render<MoveClause<*, *>>({ "Move" })
227+
render<RenameClause<*, *>>({ "Rename" })
228+
render<ReplaceClause<*, *>>({ "Replace" })
229+
render<InsertClause<*>>({ "Insert" })
230+
render<FormatClause<*, *>>({ "Format" })
231+
218232
render<DataFrameHtmlData> {
219233
// Our integration declares script and css definition. But in Kotlin Notebook outputs are isolated in IFrames
220234
// That's why we include them directly in the output
@@ -350,5 +364,11 @@ internal fun convertToDataFrame(dataframeLike: Any): AnyFrame =
350364
is GroupBy<*, *> -> dataframeLike.toDataFrame()
351365
is AnyFrame -> dataframeLike
352366
is DisableRowsLimitWrapper -> dataframeLike.value
367+
is MoveClause<*, *> -> dataframeLike.df
368+
is RenameClause<*, *> -> dataframeLike.df
369+
is ReplaceClause<*, *> -> dataframeLike.df
370+
is GroupClause<*, *> -> dataframeLike.into("untitled")
371+
is InsertClause<*> -> dataframeLike.at(0)
372+
is FormatClause<*, *> -> dataframeLike.df
353373
else -> throw IllegalArgumentException("Unsupported type: ${dataframeLike::class}")
354374
}

core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/jupyter/Integration.kt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,27 @@ import org.jetbrains.kotlinx.dataframe.DataFrame
1010
import org.jetbrains.kotlinx.dataframe.DataRow
1111
import org.jetbrains.kotlinx.dataframe.annotations.DataSchema
1212
import org.jetbrains.kotlinx.dataframe.api.Convert
13+
import org.jetbrains.kotlinx.dataframe.api.FormatClause
1314
import org.jetbrains.kotlinx.dataframe.api.FormattedFrame
1415
import org.jetbrains.kotlinx.dataframe.api.Gather
1516
import org.jetbrains.kotlinx.dataframe.api.GroupBy
17+
import org.jetbrains.kotlinx.dataframe.api.GroupClause
18+
import org.jetbrains.kotlinx.dataframe.api.InsertClause
1619
import org.jetbrains.kotlinx.dataframe.api.Merge
20+
import org.jetbrains.kotlinx.dataframe.api.MoveClause
1721
import org.jetbrains.kotlinx.dataframe.api.Pivot
1822
import org.jetbrains.kotlinx.dataframe.api.PivotGroupBy
1923
import org.jetbrains.kotlinx.dataframe.api.ReducedGroupBy
2024
import org.jetbrains.kotlinx.dataframe.api.ReducedPivot
2125
import org.jetbrains.kotlinx.dataframe.api.ReducedPivotGroupBy
26+
import org.jetbrains.kotlinx.dataframe.api.RenameClause
27+
import org.jetbrains.kotlinx.dataframe.api.ReplaceClause
2228
import org.jetbrains.kotlinx.dataframe.api.Split
2329
import org.jetbrains.kotlinx.dataframe.api.SplitWithTransform
2430
import org.jetbrains.kotlinx.dataframe.api.Update
2531
import org.jetbrains.kotlinx.dataframe.api.asColumnGroup
2632
import org.jetbrains.kotlinx.dataframe.api.asDataFrame
33+
import org.jetbrains.kotlinx.dataframe.api.at
2734
import org.jetbrains.kotlinx.dataframe.api.columnsCount
2835
import org.jetbrains.kotlinx.dataframe.api.dataFrameOf
2936
import org.jetbrains.kotlinx.dataframe.api.frames
@@ -215,6 +222,13 @@ internal class Integration(
215222
applyRowsLimit = false
216223
)
217224

225+
render<GroupClause<*, *>>({ "Group" })
226+
render<MoveClause<*, *>>({ "Move" })
227+
render<RenameClause<*, *>>({ "Rename" })
228+
render<ReplaceClause<*, *>>({ "Replace" })
229+
render<InsertClause<*>>({ "Insert" })
230+
render<FormatClause<*, *>>({ "Format" })
231+
218232
render<DataFrameHtmlData> {
219233
// Our integration declares script and css definition. But in Kotlin Notebook outputs are isolated in IFrames
220234
// That's why we include them directly in the output
@@ -350,5 +364,11 @@ internal fun convertToDataFrame(dataframeLike: Any): AnyFrame =
350364
is GroupBy<*, *> -> dataframeLike.toDataFrame()
351365
is AnyFrame -> dataframeLike
352366
is DisableRowsLimitWrapper -> dataframeLike.value
367+
is MoveClause<*, *> -> dataframeLike.df
368+
is RenameClause<*, *> -> dataframeLike.df
369+
is ReplaceClause<*, *> -> dataframeLike.df
370+
is GroupClause<*, *> -> dataframeLike.into("untitled")
371+
is InsertClause<*> -> dataframeLike.at(0)
372+
is FormatClause<*, *> -> dataframeLike.df
353373
else -> throw IllegalArgumentException("Unsupported type: ${dataframeLike::class}")
354374
}

0 commit comments

Comments
 (0)