Skip to content

Commit 3769ca2

Browse files
committed
Add some AccessApiOverload annotations
1 parent 33b5855 commit 3769ca2

25 files changed

+126
-0
lines changed

core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/DataRow.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,16 @@ public interface DataRow<out T> {
2828

2929
public operator fun <R> get(expression: RowExpression<T, R>): R = expression(this, this)
3030

31+
@AccessApiOverload
3132
public operator fun <R> get(column: ColumnReference<R>): R
3233

34+
@AccessApiOverload
3335
public operator fun <R> get(columns: List<ColumnReference<R>>): List<R> = columns.map { get(it) }
3436

3537
@AccessApiOverload
3638
public operator fun <R> get(property: KProperty<R>): R = get(property.columnName) as R
3739

40+
@AccessApiOverload
3841
public operator fun get(first: AnyColumnReference, vararg other: AnyColumnReference): DataRow<T> =
3942
owner.get(first, *other)[index]
4043

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ public fun AnyRow.namedValues(): List<NameValuePair<Any?>> =
5959

6060
public fun <T> AnyRow.getValue(columnName: String): T = get(columnName) as T
6161

62+
@AccessApiOverload
6263
public fun <T> AnyRow.getValue(column: ColumnReference<T>): T = get(column)
6364

6465
@AccessApiOverload
@@ -75,6 +76,7 @@ public fun <T> AnyRow.getValueOrNull(column: KProperty<T>): T? = getValueOrNull<
7576

7677
public fun AnyRow.containsKey(columnName: String): Boolean = owner.containsColumn(columnName)
7778

79+
@AccessApiOverload
7880
public fun AnyRow.containsKey(column: AnyColumnReference): Boolean = owner.containsColumn(column)
7981

8082
@AccessApiOverload

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import org.jetbrains.kotlinx.dataframe.AnyColumnReference
44
import org.jetbrains.kotlinx.dataframe.AnyFrame
55
import org.jetbrains.kotlinx.dataframe.ColumnsSelector
66
import org.jetbrains.kotlinx.dataframe.DataFrame
7+
import org.jetbrains.kotlinx.dataframe.annotations.AccessApiOverload
78
import org.jetbrains.kotlinx.dataframe.columns.toColumnSet
89
import org.jetbrains.kotlinx.dataframe.indices
910
import kotlin.reflect.KProperty
@@ -19,9 +20,11 @@ public fun <T, C> DataFrame<T>.countDistinct(columns: ColumnsSelector<T, C>): In
1920

2021
public fun <T> DataFrame<T>.countDistinct(vararg columns: String): Int = countDistinct { columns.toColumnSet() }
2122

23+
@AccessApiOverload
2224
public fun <T, C> DataFrame<T>.countDistinct(vararg columns: KProperty<C>): Int =
2325
countDistinct { columns.toColumnSet() }
2426

27+
@AccessApiOverload
2528
public fun <T> DataFrame<T>.countDistinct(vararg columns: AnyColumnReference): Int =
2629
countDistinct { columns.toColumnSet() }
2730

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import org.jetbrains.kotlinx.dataframe.AnyColumnReference
44
import org.jetbrains.kotlinx.dataframe.ColumnsSelector
55
import org.jetbrains.kotlinx.dataframe.DataColumn
66
import org.jetbrains.kotlinx.dataframe.DataFrame
7+
import org.jetbrains.kotlinx.dataframe.annotations.AccessApiOverload
78
import org.jetbrains.kotlinx.dataframe.columns.toColumnSet
89
import org.jetbrains.kotlinx.dataframe.impl.nothingType
910
import org.jetbrains.kotlinx.dataframe.impl.nullableNothingType
@@ -87,11 +88,13 @@ public fun <T, C> DataFrame<T>.cumSum(
8788
public fun <T> DataFrame<T>.cumSum(vararg columns: String, skipNA: Boolean = defaultCumSumSkipNA): DataFrame<T> =
8889
cumSum(skipNA) { columns.toColumnSet() }
8990

91+
@AccessApiOverload
9092
public fun <T> DataFrame<T>.cumSum(
9193
vararg columns: AnyColumnReference,
9294
skipNA: Boolean = defaultCumSumSkipNA,
9395
): DataFrame<T> = cumSum(skipNA) { columns.toColumnSet() }
9496

97+
@AccessApiOverload
9598
public fun <T> DataFrame<T>.cumSum(vararg columns: KProperty<*>, skipNA: Boolean = defaultCumSumSkipNA): DataFrame<T> =
9699
cumSum(skipNA) { columns.toColumnSet() }
97100

@@ -112,11 +115,13 @@ public fun <T, G, C> GroupBy<T, G>.cumSum(
112115
public fun <T, G> GroupBy<T, G>.cumSum(vararg columns: String, skipNA: Boolean = defaultCumSumSkipNA): GroupBy<T, G> =
113116
cumSum(skipNA) { columns.toColumnSet() }
114117

118+
@AccessApiOverload
115119
public fun <T, G> GroupBy<T, G>.cumSum(
116120
vararg columns: AnyColumnReference,
117121
skipNA: Boolean = defaultCumSumSkipNA,
118122
): GroupBy<T, G> = cumSum(skipNA) { columns.toColumnSet() }
119123

124+
@AccessApiOverload
120125
public fun <T, G> GroupBy<T, G>.cumSum(
121126
vararg columns: KProperty<*>,
122127
skipNA: Boolean = defaultCumSumSkipNA,

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package org.jetbrains.kotlinx.dataframe.api
33
import org.jetbrains.kotlinx.dataframe.ColumnsSelector
44
import org.jetbrains.kotlinx.dataframe.DataColumn
55
import org.jetbrains.kotlinx.dataframe.DataFrame
6+
import org.jetbrains.kotlinx.dataframe.annotations.AccessApiOverload
67
import org.jetbrains.kotlinx.dataframe.annotations.DataSchema
78
import org.jetbrains.kotlinx.dataframe.columns.ColumnPath
89
import org.jetbrains.kotlinx.dataframe.columns.ColumnReference
@@ -49,9 +50,11 @@ public fun <T> DataFrame<T>.describe(columns: ColumnsSelector<T, *>): DataFrame<
4950
public fun <T> DataFrame<T>.describe(vararg columns: String): DataFrame<ColumnDescription> =
5051
describe { columns.toColumnSet() }
5152

53+
@AccessApiOverload
5254
public fun <T, C : Number?> DataFrame<T>.describe(vararg columns: ColumnReference<C>): DataFrame<ColumnDescription> =
5355
describe { columns.toColumnSet() }
5456

57+
@AccessApiOverload
5558
public fun <T, C : Number?> DataFrame<T>.describe(vararg columns: KProperty<C>): DataFrame<ColumnDescription> =
5659
describe { columns.toColumnSet() }
5760

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import org.jetbrains.kotlinx.dataframe.DataColumn
55
import org.jetbrains.kotlinx.dataframe.DataFrame
66
import org.jetbrains.kotlinx.dataframe.DataRow
77
import org.jetbrains.kotlinx.dataframe.RowFilter
8+
import org.jetbrains.kotlinx.dataframe.annotations.AccessApiOverload
89
import org.jetbrains.kotlinx.dataframe.columns.ColumnGroup
910
import org.jetbrains.kotlinx.dataframe.columns.ColumnPath
1011
import org.jetbrains.kotlinx.dataframe.columns.ColumnReference
@@ -202,6 +203,7 @@ public interface FirstColumnsSelectionDsl {
202203
*
203204
* `df.`[select][DataFrame.select]` { DataSchemaType::myColumnGroup.`[firstCol][KProperty.firstCol]`() }`
204205
*/
206+
@AccessApiOverload
205207
public fun KProperty<*>.firstCol(condition: ColumnFilter<*> = { true }): TransformableSingleColumn<*> =
206208
columnGroup(this).firstCol(condition)
207209

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import org.jetbrains.kotlinx.dataframe.AnyFrame
44
import org.jetbrains.kotlinx.dataframe.DataFrame
55
import org.jetbrains.kotlinx.dataframe.DataRow
66
import org.jetbrains.kotlinx.dataframe.Predicate
7+
import org.jetbrains.kotlinx.dataframe.annotations.AccessApiOverload
78
import org.jetbrains.kotlinx.dataframe.annotations.Interpretable
89
import org.jetbrains.kotlinx.dataframe.columns.ColumnPath
910
import org.jetbrains.kotlinx.dataframe.columns.ColumnReference
@@ -159,6 +160,7 @@ public interface FrameColsColumnsSelectionDsl {
159160
*
160161
* `df.`[select][DataFrame.select]` { DataSchemaType::myColGroup.`[frameCols][KProperty.frameCols]`() }`
161162
*/
163+
@AccessApiOverload
162164
public fun KProperty<*>.frameCols(
163165
filter: Predicate<FrameColumn<*>> = { true },
164166
): TransformableColumnSet<DataFrame<*>> = columnGroup(this).frameCols(filter)

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,15 @@ public inline fun <T, reified R> DataFrame<T>.insert(
3030
): InsertClause<T> = insert(mapToColumn(name, infer, expression))
3131

3232
@Interpretable("Insert2")
33+
@AccessApiOverload
3334
public inline fun <T, reified R> DataFrame<T>.insert(
3435
column: ColumnAccessor<R>,
3536
infer: Infer = Infer.Nulls,
3637
noinline expression: RowExpression<T, R>,
3738
): InsertClause<T> = insert(column.name(), infer, expression)
3839

3940
@Interpretable("Insert3")
41+
@AccessApiOverload
4042
public inline fun <T, reified R> DataFrame<T>.insert(
4143
column: KProperty<R>,
4244
infer: Infer = Infer.Nulls,

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import org.jetbrains.kotlinx.dataframe.DataColumn
55
import org.jetbrains.kotlinx.dataframe.DataFrame
66
import org.jetbrains.kotlinx.dataframe.DataRow
77
import org.jetbrains.kotlinx.dataframe.RowFilter
8+
import org.jetbrains.kotlinx.dataframe.annotations.AccessApiOverload
89
import org.jetbrains.kotlinx.dataframe.columns.ColumnGroup
910
import org.jetbrains.kotlinx.dataframe.columns.ColumnPath
1011
import org.jetbrains.kotlinx.dataframe.columns.ColumnReference
@@ -201,6 +202,7 @@ public interface LastColumnsSelectionDsl {
201202
*
202203
* `df.`[select][DataFrame.select]` { DataSchemaType::myColumnGroup.`[lastCol][KProperty.lastCol]`() }`
203204
*/
205+
@AccessApiOverload
204206
public fun KProperty<*>.lastCol(condition: ColumnFilter<*> = { true }): TransformableSingleColumn<*> =
205207
columnGroup(this).lastCol(condition)
206208

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

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,7 @@ public fun <T, C : Comparable<C>> Grouped<T>.max(name: String? = null, columns:
153153
public fun <T> Grouped<T>.max(vararg columns: String, name: String? = null): DataFrame<T> =
154154
max(name) { columns.toComparableColumns() }
155155

156+
@AccessApiOverload
156157
public fun <T, C : Comparable<C>> Grouped<T>.max(
157158
vararg columns: ColumnReference<C?>,
158159
name: String? = null,
@@ -195,11 +196,13 @@ public fun <T, R : Comparable<R>> Pivot<T>.maxFor(
195196
public fun <T> Pivot<T>.maxFor(vararg columns: String, separate: Boolean = false): DataRow<T> =
196197
maxFor(separate) { columns.toComparableColumns() }
197198

199+
@AccessApiOverload
198200
public fun <T, R : Comparable<R>> Pivot<T>.maxFor(
199201
vararg columns: ColumnReference<R?>,
200202
separate: Boolean = false,
201203
): DataRow<T> = maxFor(separate) { columns.toColumnSet() }
202204

205+
@AccessApiOverload
203206
public fun <T, R : Comparable<R>> Pivot<T>.maxFor(
204207
vararg columns: KProperty<R?>,
205208
separate: Boolean = false,
@@ -209,9 +212,11 @@ public fun <T, R : Comparable<R>> Pivot<T>.max(columns: ColumnsSelector<T, R?>):
209212

210213
public fun <T> Pivot<T>.max(vararg columns: String): DataRow<T> = max { columns.toComparableColumns() }
211214

215+
@AccessApiOverload
212216
public fun <T, R : Comparable<R>> Pivot<T>.max(vararg columns: ColumnReference<R?>): DataRow<T> =
213217
max { columns.toColumnSet() }
214218

219+
@AccessApiOverload
215220
public fun <T, R : Comparable<R>> Pivot<T>.max(vararg columns: KProperty<R?>): DataRow<T> =
216221
max { columns.toColumnSet() }
217222

@@ -221,12 +226,14 @@ public fun <T, R : Comparable<R>> Pivot<T>.maxOf(rowExpression: RowExpression<T,
221226
public fun <T, R : Comparable<R>> Pivot<T>.maxBy(rowExpression: RowExpression<T, R>): ReducedPivot<T> =
222227
reduce { maxByOrNull(rowExpression) }
223228

229+
@AccessApiOverload
224230
public fun <T, C : Comparable<C>> Pivot<T>.maxBy(column: ColumnReference<C?>): ReducedPivot<T> =
225231
reduce { maxByOrNull(column) }
226232

227233
public fun <T> Pivot<T>.maxBy(column: String): ReducedPivot<T> =
228234
maxBy(column.toColumnAccessor().cast<Comparable<Any?>>())
229235

236+
@AccessApiOverload
230237
public fun <T, C : Comparable<C>> Pivot<T>.maxBy(column: KProperty<C?>): ReducedPivot<T> =
231238
maxBy(column.toColumnAccessor())
232239

@@ -244,11 +251,13 @@ public fun <T, R : Comparable<R>> PivotGroupBy<T>.maxFor(
244251
public fun <T> PivotGroupBy<T>.maxFor(vararg columns: String, separate: Boolean = false): DataFrame<T> =
245252
maxFor(separate) { columns.toComparableColumns() }
246253

254+
@AccessApiOverload
247255
public fun <T, R : Comparable<R>> PivotGroupBy<T>.maxFor(
248256
vararg columns: ColumnReference<R?>,
249257
separate: Boolean = false,
250258
): DataFrame<T> = maxFor(separate) { columns.toColumnSet() }
251259

260+
@AccessApiOverload
252261
public fun <T, R : Comparable<R>> PivotGroupBy<T>.maxFor(
253262
vararg columns: KProperty<R?>,
254263
separate: Boolean = false,
@@ -259,9 +268,11 @@ public fun <T, R : Comparable<R>> PivotGroupBy<T>.max(columns: ColumnsSelector<T
259268

260269
public fun <T> PivotGroupBy<T>.max(vararg columns: String): DataFrame<T> = max { columns.toComparableColumns() }
261270

271+
@AccessApiOverload
262272
public fun <T, R : Comparable<R>> PivotGroupBy<T>.max(vararg columns: ColumnReference<R?>): DataFrame<T> =
263273
max { columns.toColumnSet() }
264274

275+
@AccessApiOverload
265276
public fun <T, R : Comparable<R>> PivotGroupBy<T>.max(vararg columns: KProperty<R?>): DataFrame<T> =
266277
max { columns.toColumnSet() }
267278

@@ -271,12 +282,14 @@ public fun <T, R : Comparable<R>> PivotGroupBy<T>.maxOf(rowExpression: RowExpres
271282
public fun <T, R : Comparable<R>> PivotGroupBy<T>.maxBy(rowExpression: RowExpression<T, R>): ReducedPivotGroupBy<T> =
272283
reduce { maxByOrNull(rowExpression) }
273284

285+
@AccessApiOverload
274286
public fun <T, C : Comparable<C>> PivotGroupBy<T>.maxBy(column: ColumnReference<C?>): ReducedPivotGroupBy<T> =
275287
reduce { maxByOrNull(column) }
276288

277289
public fun <T> PivotGroupBy<T>.maxBy(column: String): ReducedPivotGroupBy<T> =
278290
maxBy(column.toColumnAccessor().cast<Comparable<Any?>>())
279291

292+
@AccessApiOverload
280293
public fun <T, C : Comparable<C>> PivotGroupBy<T>.maxBy(column: KProperty<C?>): ReducedPivotGroupBy<T> =
281294
maxBy(column.toColumnAccessor())
282295

0 commit comments

Comments
 (0)