Kotlin / Kotlin/dataframe

Add KDocs for the remaining column-type predicates in `DataColumnType.kt`

Open Beginner friendly
#1,997 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

KDocs
Dominant language
Kotlin
Stars
1.1k
Forks
83
Avg merge
4d 12h
Merged PRs (30d)
30

Description

Add KDocs for the remaining column-type predicates in DataColumnType.kt

The file core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/api/DataColumnType.kt is partially documented. Add concise KDocs to the predicates that still lack them.

Already documented (leave as-is)

isNumber, isMixedNumber, isPrimitiveNumber, isPrimitiveOrMixedNumber, valuesAreComparable. (isComparable is deprecated with ERROR level — out of scope.)

Scope — not documented
  • AnyCol.isColumnGroup()
  • AnyCol.isFrameColumn()
  • AnyCol.isValueColumn()
  • AnyCol.isSubtypeOf(type: KType)
  • AnyCol.isSubtypeOf<T>() (reified)
  • AnyCol.isType<T>() (reified)
  • AnyCol.isList()
KDocs should explain
  • The column-kind checks (isColumnGroup / isFrameColumn / isValueColumn): each returns true when the column is of that kind (ColumnKind.Group / Frame / Value). Mention that they carry a Kotlin contract — a true result smart-casts the receiver to ColumnGroup<*> / FrameColumn<*> / ValueColumn<*>.
  • isSubtypeOf(type) / isSubtypeOf<T>(): returns true when the column's element type is a subtype of the given type, with nullability respected (a nullable column is not a subtype of a non-nullable type).
  • isType<T>(): returns true only when the column's element type is exactly T (no subtyping) — contrast with isSubtypeOf.
  • isList(): returns true when the column's element type class is List.
Acceptance criteria
  • All seven predicates listed under Scope have concise KDocs; the already-documented predicates are preserved.
  • The kind-check KDocs note the smart-cast contract.
  • The KDocs make the isSubtypeOf (subtype, nullability-aware) vs isType (exact type) distinction explicit.
  • No documentation is added for the deprecated isComparable.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/api/DataColumnType.kt and review the existing KDocs for the documented predicates. Add concise KDocs for the seven listed predicates, including the kind-check smart-cast contracts and the nullability-aware subtype versus exact-type distinction. Done means all seven are documented, existing KDocs are unchanged, and isComparable remains undocumented.

Written by the indexing model from the issue text.

Assessment

Tech stack
kotlin
Domain
documentation
Issue type
Documentation
Difficulty
1/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
88/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.