Skip to content

Commit 62332ee

Browse files
committed
Rename require -> requireColumn
1 parent 490da74 commit 62332ee

File tree

3 files changed

+10
-10
lines changed
  • core/src
    • main/kotlin/org/jetbrains/kotlinx/dataframe/api
    • test/kotlin/org/jetbrains/kotlinx/dataframe/api
  • docs/StardustDocs/topics

3 files changed

+10
-10
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@ import kotlin.reflect.typeOf
1313
*/
1414
@Refine
1515
@Interpretable("Require0")
16-
public inline fun <T, reified C> DataFrame<T>.require(noinline column: ColumnSelector<T, C>): DataFrame<T> =
16+
public inline fun <T, reified C> DataFrame<T>.requireColumn(noinline column: ColumnSelector<T, C>): DataFrame<T> =
1717
requireImpl(column, typeOf<C>())

core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/api/require.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ class RequireTests : ColumnsSelectionDslTests() {
99

1010
@Test
1111
fun `require returns same dataframe for existing typed column`() {
12-
val checked = df.require { "name"["firstName"]<String>() }
12+
val checked = df.requireColumn { "name"["firstName"]<String>() }
1313
checked shouldBe df
1414
}
1515

1616
@Test
1717
fun `require throws on type mismatch`() {
1818
val throwable = shouldThrow<IllegalArgumentException> {
19-
df.require { "name"["firstName"]<Int>() }
19+
df.requireColumn { "name"["firstName"]<Int>() }
2020
}
2121
throwable.message shouldBe
2222
"Column 'name/firstName' has type 'kotlin.String', which is not subtype of required 'kotlin.Int' type."
@@ -25,7 +25,7 @@ class RequireTests : ColumnsSelectionDslTests() {
2525
@Test
2626
fun `require throws when column cannot be resolved`() {
2727
val exception = shouldThrowAny {
28-
df.require { "name"["unknown"]<String>() }
28+
df.requireColumn { "name"["unknown"]<String>() }
2929
}
3030
exception.message shouldBe
3131
"Column 'name/unknown' not found among columns of 'name': [firstName, lastName]."
@@ -34,7 +34,7 @@ class RequireTests : ColumnsSelectionDslTests() {
3434
@Test
3535
fun `require missing parent message includes available columns`() {
3636
val exception = shouldThrowAny {
37-
df.require { "name2"["unknown"]<String>() }
37+
df.requireColumn { "name2"["unknown"]<String>() }
3838
}
3939
exception.message shouldBe
4040
"Column 'name2' not found among [name, age, city, weight, isHappy]."
@@ -43,7 +43,7 @@ class RequireTests : ColumnsSelectionDslTests() {
4343
@Test
4444
fun `require deep missing parent message uses nearest existing ancestor`() {
4545
val exception = shouldThrowAny {
46-
df.require { "name"["unknownGroup"]["value"]<String>() }
46+
df.requireColumn { "name"["unknownGroup"]["value"]<String>() }
4747
}
4848
exception.message shouldBe
4949
"Column 'name/unknownGroup' not found among columns of 'name': [firstName, lastName]."

docs/StardustDocs/topics/require.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,17 @@ The aim here is to help incrementally migrate workflows to [extension properties
88
Will work in compiler plugin starting from IntelliJ IDEA 2026.2 and Kotlin 2.4.0.
99

1010
```text
11-
require { column }
11+
requireColumn { column }
1212
```
1313

1414
**Related operations**: [](cast.md), [](convertTo)
1515

1616
```kotlin
17-
// Before `require` extension property will not be resolved
17+
// Before `requireColumn` extension property will not be resolved
1818
// peopleDf.select { name.firstName }
1919

2020
// Require a column with a runtime check
21-
val df = peopleDf.require { "name"["firstName"]<String>() }
22-
// Use extension property after `require`
21+
val df = peopleDf.requireColumn { "name"["firstName"]<String>() }
22+
// Use extension property after `requireColumn`
2323
val v: String = df.name.firstName[0]
2424
```

0 commit comments

Comments
 (0)