Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
2 changes: 2 additions & 0 deletions core/api/core.api
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,8 @@ public final class org/jetbrains/kotlinx/dataframe/api/AddKt {
public static final fun add (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lorg/jetbrains/kotlinx/dataframe/DataFrame;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun add (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lorg/jetbrains/kotlinx/dataframe/columns/BaseColumn;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun addAll (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/Iterable;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun addAll (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lorg/jetbrains/kotlinx/dataframe/DataFrame;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun addAll (Lorg/jetbrains/kotlinx/dataframe/DataFrame;[Lorg/jetbrains/kotlinx/dataframe/columns/BaseColumn;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
public static final fun addAllFrames (Lorg/jetbrains/kotlinx/dataframe/DataFrame;Ljava/lang/Iterable;)Lorg/jetbrains/kotlinx/dataframe/DataFrame;
}

Expand Down
43 changes: 43 additions & 0 deletions core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/api/add.kt
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ import org.jetbrains.kotlinx.dataframe.exceptions.DuplicateColumnNamesException
import org.jetbrains.kotlinx.dataframe.exceptions.UnequalColumnSizesException
import org.jetbrains.kotlinx.dataframe.impl.api.insertImpl
import org.jetbrains.kotlinx.dataframe.impl.columns.resolveSingle
import org.jetbrains.kotlinx.dataframe.util.ADD_VARARG_COLUMNS
import org.jetbrains.kotlinx.dataframe.util.ADD_VARARG_COLUMNS_REPLACE
import org.jetbrains.kotlinx.dataframe.util.ADD_VARARG_FRAMES
import org.jetbrains.kotlinx.dataframe.util.ADD_VARARG_FRAMES_REPLACE
import org.jetbrains.kotlinx.dataframe.util.DEPRECATED_ACCESS_API
import kotlin.reflect.KProperty

Expand All @@ -43,8 +47,27 @@ import kotlin.reflect.KProperty
* @throws [UnequalColumnSizesException] if columns in an expected result have different sizes.
* @return new [DataFrame] with added columns.
*/
@Deprecated(
message = ADD_VARARG_COLUMNS,
replaceWith = ReplaceWith(ADD_VARARG_COLUMNS_REPLACE),
level = DeprecationLevel.WARNING,
)
public fun <T> DataFrame<T>.add(vararg columns: AnyBaseCol): DataFrame<T> = addAll(columns.asIterable())

/**
* Adds new [columns] to the end of this [DataFrame] (at the top level).
*
* Returns a new [DataFrame] with the new [columns] appended to the original list of [DataFrame.columns].
*
* For more information: {@include [DocumentationUrls.Add]}.
*
* @param columns columns to add.
* @throws [DuplicateColumnNamesException] if columns in an expected result have repeated names.
* @throws [UnequalColumnSizesException] if columns in an expected result have different sizes.
* @return new [DataFrame] with added columns.
*/
public fun <T> DataFrame<T>.addAll(vararg columns: AnyBaseCol): DataFrame<T> = addAll(columns.asIterable())

/**
* Adds new [columns] to the end of this [DataFrame] (at the top level).
*
Expand Down Expand Up @@ -73,8 +96,28 @@ public fun <T> DataFrame<T>.addAll(columns: Iterable<AnyBaseCol>): DataFrame<T>
* @throws [UnequalColumnSizesException] if columns in an expected result have different sizes.
* @return new [DataFrame] with added columns.
*/
@Deprecated(
message = ADD_VARARG_FRAMES,
replaceWith = ReplaceWith(ADD_VARARG_FRAMES_REPLACE),
level = DeprecationLevel.WARNING,
)
public fun <T> DataFrame<T>.add(vararg dataFrames: AnyFrame): DataFrame<T> = addAll(dataFrames.asIterable())

/**
* Adds all columns from the given [dataFrames] to the end of this [DataFrame] (at the top level).
*
* Returns a new [DataFrame] with the columns from the specified
* [dataFrames] appended to the original list of [DataFrame.columns].
*
* For more information: {@include [DocumentationUrls.Add]}.
*
* @param dataFrames dataFrames to get columns from.
* @throws [DuplicateColumnNamesException] if columns in an expected result have repeated names.
* @throws [UnequalColumnSizesException] if columns in an expected result have different sizes.
* @return new [DataFrame] with added columns.
*/
public fun <T> DataFrame<T>.addAll(vararg dataFrames: AnyFrame): DataFrame<T> = addAll(dataFrames.asIterable())

/**
* Adds all columns from the given [dataFrames] to the end of this [DataFrame] (at the top level).
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,12 @@ internal const val INSERT_AFTER_COL_PATH =
"This `after()` overload will be removed in favor of `after { }` with Column Selection DSL. $MESSAGE_1_0"
internal const val INSERT_AFTER_COL_PATH_REPLACE = "this.after { columnPath }"

internal const val ADD_VARARG_COLUMNS = "Deprecated in favor of `addAll(vararg)` to improve completion. $MESSAGE_1_0"
internal const val ADD_VARARG_COLUMNS_REPLACE = "this.addAll(*columns)"

internal const val ADD_VARARG_FRAMES = "Deprecated in favor of `addAll(vararg)` to improve completion. $MESSAGE_1_0"
internal const val ADD_VARARG_FRAMES_REPLACE = "this.addAll(*dataFrames)"

// endregion

// region WARNING in 1.0, ERROR in 1.1
Expand Down
Loading