Package-level declarations

Types

Link copied to clipboard
internal class AggregatedPivot<T>(df: DataFrame<T>, val inward: Boolean?, var aggregator: GroupByReceiverImpl<T>) : DataFrame<T>
Link copied to clipboard
internal typealias ColumnGroupByResult = Array<AnyCol>
Link copied to clipboard
internal class ColumnSetWithSortFlag<C>(val column: ColumnsResolver<C>, val flag: SortFlag) : ColumnSet<C>
Link copied to clipboard
internal data class ColumnToInsert(val insertionPath: ColumnPath, val column: AnyBaseCol, val referenceNode: ReadonlyTreeNode<ReferenceData>? = null)
Link copied to clipboard
Link copied to clipboard
internal class CreateDataFrameDslImpl<T>(val source: Iterable<T>, type: KType, prefix: ColumnPath = emptyPath(), configuration: CreateDataFrameDslImpl.TraverseConfiguration = TraverseConfiguration()) : CreateDataFrameDsl<T>
Link copied to clipboard
internal class GroupedDataRowImpl<T, G>(row: DataRow<T>, frameCol: FrameColumn<G>) : GroupedDataRow<T, G> , DataRow<T>
Link copied to clipboard
internal class JoinedDataRowImpl<A, B>(leftOwner: DataFrame<A>, val index: Int, rightOwner: DataFrame<B>, index1: Int) : DataRowImpl<A> , JoinedDataRow<A, B>
Link copied to clipboard
internal class MergedAttributes(attributes: List<CellAttributes>) : CellAttributes
Link copied to clipboard
internal typealias ParserFunction<T> = (String) -> T?
Link copied to clipboard
internal object Parsers : GlobalParserOptions

Central implementation for GlobalParserOptions.

Link copied to clipboard
internal class PivotChain<C>(val columns: List<PivotChainElement>, lastColumn: ColumnWithPath<C>) : ColumnWithPath<C>
Link copied to clipboard
internal class PivotChainColumnSet<C>(val first: ColumnsResolver<C>, val second: ColumnsResolver<C>) : ColumnSet<C>
Link copied to clipboard
internal data class PivotChainElement(val column: ColumnWithPath<Any?>, val includeColumnName: Boolean)
Link copied to clipboard
internal data class RemoveResult<T>(val df: DataFrame<T>, val removedColumns: List<TreeNode<ColumnPosition>>)
Link copied to clipboard
internal class SingleAttribute(val key: String, val value: String) : CellAttributes
Link copied to clipboard
internal class SortColumnDescriptor<C>(val column: ValueColumn<C>, val direction: SortDirection = SortDirection.Asc, val nullsLast: Boolean = false) : ValueColumnInternal<C>
Link copied to clipboard
internal enum class SortDirection : Enum<SortDirection>
Link copied to clipboard
internal enum class SortFlag : Enum<SortFlag>
Link copied to clipboard
internal interface StringParser<out T>
Link copied to clipboard
internal class StringParserImpl<T>(val type: KType, val name: String? = null, val parser: ParserFunction<T>) : StringParser<T>
Link copied to clipboard
internal class StringParserImplWithOptions<T>(val type: KType, val name: String? = null, val getParserForConverter: (ParserOptions?) -> ParserFunction<T>, val getParser: (ParserOptions?, List<KType>) -> ParserFunction<T>) : StringParser<T>
Link copied to clipboard
internal typealias TypeConverter = (Any) -> Any?

Properties

Link copied to clipboard

Determines whether a class can be unfolded into its properties.

Link copied to clipboard
Link copied to clipboard
internal val defaultTimeZone: TimeZone
Link copied to clipboard

Checks if KClass has public properties / getter functions (for pojo-like classes).

Link copied to clipboard

Checks if KClass is a value type (number, datetime, string, etc.) Should be aligned with ConeKotlinType.isValueType() in plugins/kotlin-dataframe/src/org/jetbrains/kotlinx/dataframe/plugin/impl/api/toDataFrame.kt

Link copied to clipboard

ParserFunction that always returns null. Useful if a parser needs to be skipped based on the provided ParserOptions.

Functions

Link copied to clipboard
Link copied to clipboard
internal fun <T> InsertClause<T>.afterImpl(columnPath: ColumnPath): DataFrame<T>
Link copied to clipboard
internal fun <T, C> MoveClause<T, C>.afterOrBefore(column: ColumnSelector<T, *>, isAfter: Boolean): DataFrame<T>
Link copied to clipboard
internal fun <T, R> aggregatePivot(aggregator: AggregateInternalDsl<T>, columns: PivotColumnsSelector<T, *>, separate: Boolean, inward: Boolean? = null, globalDefault: Any? = null, body: Selector<AggregateDsl<T>, R>)
Link copied to clipboard
internal fun <T, C, R> Update<T, DataRow<C>>.asFrameImpl(expression: DataFrameExpression<C, DataFrame<R>>): DataFrame<T>

Implementation for Update As Frame: Replaces selected column groups with the result of the expression only where the filter is true.

Link copied to clipboard
internal fun <T> InsertClause<T>.beforeImpl(columnPath: ColumnPath): DataFrame<T>
Link copied to clipboard
internal fun <T> DataFrame<T>.chunkedImpl(startIndices: Iterable<Int>, name: String = "groups"): FrameColumn<T>

Creates a FrameColumn from this by splitting the dataframe into smaller ones, based on the given startIndices.

Link copied to clipboard
internal fun compileTimeSchemaImpl(runtimeSchema: DataFrameSchema?, klass: KClass<*>): DataFrameSchema
Link copied to clipboard
internal fun componentWise(color1: RgbColor, color2: RgbColor, f: (Short, Short) -> Short): RgbColor
Link copied to clipboard
internal fun <T> concatImpl(dataFrames: List<DataFrame<T>>): DataFrame<T>
internal fun <T> concatImpl(name: String, columns: List<DataColumn<T>>): DataColumn<T>
internal fun <T> concatImpl(name: String, columns: List<DataColumn<T>?>, columnSizes: List<Int>): DataColumn<T>
Link copied to clipboard
internal inline fun <T> convert(crossinline converter: (T) -> Any?): TypeConverter
Link copied to clipboard
internal fun <T, C, R> Convert<T, C>.convertRowColumnImpl(type: KType, infer: Infer, rowConverter: RowColumnExpression<T, C, R>): DataFrame<T>
Link copied to clipboard
internal fun Any.convertTo(type: KType): Any?
Link copied to clipboard
internal fun convertToDataFrame(data: Iterable<*>, type: KType, roots: List<KCallable<*>>, excludes: Set<KCallable<*>>, preserveClasses: Set<KClass<*>>, preserveProperties: Set<KCallable<*>>, excludeClasses: Set<KClass<*>>, maxDepth: Int): AnyFrame
Link copied to clipboard
internal fun AnyFrame.convertToImpl(type: KType, allowConversion: Boolean, excessiveColumns: ExcessiveColumns, body: ConvertSchemaDsl<Any>.() -> Unit = {}): AnyFrame
Link copied to clipboard
internal fun AnyCol.convertToTypeImpl(to: KType, parserOptions: ParserOptions?): AnyCol
Link copied to clipboard
internal fun <T, C, R> Corr<T, C>.corrImpl(otherColumns: ColumnsSelector<T, R>): DataFrame<T>
Link copied to clipboard
internal fun AnyCol.createComparator(nullsLast: Boolean): Comparator<Int>
Link copied to clipboard
internal fun createConverter(from: KType, to: KType, options: ParserOptions? = null): TypeConverter?
Link copied to clipboard
Link copied to clipboard
internal fun dataFrameOf(columns: List<ColumnToInsert>): DataFrame<Unit>
Link copied to clipboard
internal fun <T> defaultJoinColumns(dataFrames: Iterable<DataFrame<T>>): JoinColumnsSelector<T, T>
Link copied to clipboard
Link copied to clipboard
internal fun <T> DataFrame<T>.duplicateImpl(n: Int): FrameColumn<T>
internal fun <T> DataRow<T>.duplicateImpl(n: Int): DataFrame<T>
Link copied to clipboard
internal fun <T> DataFrame<T>.duplicateRowsImpl(n: Int): DataFrame<T>
internal fun <T> DataFrame<T>.duplicateRowsImpl(n: Int, indicesSorted: Iterable<Int>): DataFrame<T>
Link copied to clipboard
internal fun <T> DataColumn<T>.duplicateValuesImpl(n: Int, indicesSorted: Iterable<Int>): DataColumn<T>
Link copied to clipboard
internal fun encHex(v: Short): String
Link copied to clipboard
internal fun RgbColor.encode(): String
Link copied to clipboard
internal fun encRgb(r: Short, g: Short, b: Short): String
Link copied to clipboard
internal fun AnyCol.explodeImpl(): AnyCol
internal fun <T> DataFrame<T>.explodeImpl(dropEmpty: Boolean = true, columns: ColumnsSelector<T, *>): DataFrame<T>
Link copied to clipboard
Link copied to clipboard
internal fun <T, C> DataFrame<T>.flattenImpl(columns: ColumnsSelector<T, C>, keepParentNameForColumns: Boolean = false, separator: String = "_"): DataFrame<T>
Link copied to clipboard
Link copied to clipboard
internal inline fun <T, C> FormatClause<T, C>.formatImpl(crossinline formatter: RowColFormatter<T, C>): FormattedFrame<T>
Link copied to clipboard
@FormatStringsInDatetimeFormats
internal fun DateTimeFormat.Companion.fromPattern(pattern: String, formatType: KType): DateTimeFormat<out Any>
Link copied to clipboard
internal fun <T, C, K, R> Gather<T, C, K, R>.gatherImpl(namesTo: String? = null, valuesTo: String? = null): DataFrame<T>
Link copied to clipboard
internal fun generateUnusedName(df: DataFrame<*>, preferredName: String?, insertPath: ColumnPath, columnsToBeInserted: List<ColumnToInsert>): String
Link copied to clipboard
internal fun getConverter(from: KType, to: KType, options: ParserOptions? = null): TypeConverter?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
internal fun <T, C> DataFrame<T>.getSortColumns(columns: SortColumnsSelector<T, C>, unresolvedColumnsPolicy: UnresolvedColumnsPolicy): List<SortColumnDescriptor<*>>
Link copied to clipboard
internal fun <T> DataFrame<T>.groupByImpl(moveToTop: Boolean, columns: ColumnsSelector<T, *>): GroupBy<T, T>
Link copied to clipboard
internal fun <T, C> DataFrame<T>.implodeImpl(dropNA: Boolean = false, columns: ColumnsSelector<T, C>): DataFrame<T>
Link copied to clipboard
internal fun <T> insertImpl(df: DataFrame<T>?, columns: List<ColumnToInsert>): DataFrame<T>
internal fun <T> insertImpl(df: DataFrame<T>?, columns: List<ColumnToInsert>, treeNode: ReadonlyTreeNode<ReferenceData>?, depth: Int): DataFrame<T>
Link copied to clipboard
@JvmName(name = "insertImplT")
internal fun <T> DataFrame<T>.insertImpl(columns: List<ColumnToInsert>): DataFrame<T>
internal fun <T> DataFrame<T>.insertImpl(path: ColumnPath, column: AnyCol): DataFrame<T>
Link copied to clipboard
internal fun <A, B> DataFrame<A>.joinImpl(other: DataFrame<B>, joinType: JoinType = JoinType.Inner, addNewColumns: Boolean = true, selector: JoinColumnsSelector<A, B>?): DataFrame<A>
Link copied to clipboard
internal fun <A, B> DataFrame<A>.joinWithImpl(right: DataFrame<B>, type: JoinType = JoinType.Inner, addNewColumns: Boolean, joinExpression: JoinExpression<A, B>): DataFrame<A>
Link copied to clipboard
internal fun linearGradient(x: Double, minValue: Double, minColor: RgbColor, maxValue: Double, maxColor: RgbColor): RgbColor
Link copied to clipboard
internal fun <T, R> DataColumn<T?>.mapNotNullValues(transform: (T) -> R): DataColumn<R?>
Link copied to clipboard
internal fun <T, C> MoveClause<T, C>.moveImpl(under: Boolean = false, newPathExpression: ColumnsSelectionDsl<T>.(ColumnWithPath<C>) -> AnyColumnReference): DataFrame<T>
Link copied to clipboard
internal fun <T, C> MoveClause<T, C>.moveTo(columnIndex: Int): DataFrame<T>
Link copied to clipboard
internal fun <T, C> MoveClause<T, C>.moveToImpl(columnIndex: Int, insideGroup: Boolean): DataFrame<T>
Link copied to clipboard
internal fun <T> DataColumn<String?>.parse(parser: StringParser<T>, options: ParserOptions?): DataColumn<T?>
Link copied to clipboard
internal fun <T> parseBy(body: ParserFunction<T>): ParserFunction<T>

Tiny helper function to create a correctly typed ParserFunction<T>, aka (String) -> T?.

Link copied to clipboard
internal fun <T> DataFrame<T>.parseImpl(options: ParserOptions?, columns: ColumnsSelector<T, Any?>): DataFrame<T>
Link copied to clipboard
Link copied to clipboard
internal fun <T> DataFrame<T>.removeImpl(allowMissingColumns: Boolean = false, columns: ColumnsSelector<T, *>): RemoveResult<T>
Link copied to clipboard
internal fun <T, C> RenameClause<T, C>.renameImpl(newNames: Array<out String>): DataFrame<T>
internal fun <T, C> RenameClause<T, C>.renameImpl(transform: (ColumnWithPath<C>) -> String): DataFrame<T>
Link copied to clipboard
internal fun <T, C, V : Comparable<V>> Reorder<T, C>.reorderImpl(desc: Boolean, expression: ColumnExpression<C, V>, unwrapSingleColumnGroup: Boolean = true): DataFrame<T>
Link copied to clipboard
internal fun <T, C> DataFrame<T>.requireImpl(column: ColumnSelector<T, C>, type: KType): DataFrame<T>
Link copied to clipboard
Link copied to clipboard
internal fun <T, G> GroupBy<T, G>.sortByImpl(columns: SortColumnsSelector<G, *>): GroupBy<T, G>
internal fun <T, C> DataFrame<T>.sortByImpl(unresolvedColumnsPolicy: UnresolvedColumnsPolicy = UnresolvedColumnsPolicy.Fail, columns: SortColumnsSelector<T, C>): DataFrame<T>
Link copied to clipboard
Link copied to clipboard
internal fun String.splitDefault(): List<String>
Link copied to clipboard
internal fun <T, C, R> splitImpl(clause: SplitWithTransform<T, C, R>, columnNamesGenerator: ColumnWithPath<C>.(Int) -> List<String>): DataFrame<T>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
internal fun Long.toLocalDate(zone: TimeZone = defaultTimeZone): LocalDate
internal fun Instant.toLocalDate(zone: TimeZone = defaultTimeZone): LocalDate
Link copied to clipboard
internal fun Long.toLocalDateTime(zone: TimeZone = defaultTimeZone): LocalDateTime
Link copied to clipboard
internal fun Long.toLocalTime(zone: TimeZone = defaultTimeZone): LocalTime
internal fun Instant.toLocalTime(zone: TimeZone = defaultTimeZone): LocalTime
Link copied to clipboard
Link copied to clipboard
internal fun DataColumn<String?>.tryParseImpl(options: ParserOptions?): DataColumn<*>

Tries to parse a column of strings into a column of a different type. Each parser in Parsers is run in order until a valid parser is found, a.k.a. that parser was able to parse all values in the column successfully. If a parser fails to parse any value, the next parser is tried. If all the others fail, the final parser simply returns the original string, leaving the column unchanged.

Link copied to clipboard
internal fun <T> DataColumn<T>.unfoldImpl(type: KType, body: CreateDataFrameDsl<T>.() -> Unit): AnyCol
Link copied to clipboard
internal fun <T, C> Update<T, C>.updateImpl(expression: (AddDataRow<T>, DataColumn<C>, C) -> C?): DataFrame<T>
internal fun <T, C> DataColumn<C>.updateImpl(df: DataFrame<T>, filter: RowValueFilter<T, C>?, expression: (AddDataRow<T>, DataColumn<C>, C) -> C?): DataColumn<C>
Link copied to clipboard
internal fun <T> DataColumn<T>.updateWith(values: List<T>): DataColumn<T>

Replaces all values in the column asserting that new values are compatible with the current column kind.

Link copied to clipboard
Link copied to clipboard
internal fun valueToList(value: Any?, splitStrings: Boolean = true): List<Any?>
Link copied to clipboard
internal fun <T> ParserFunction<T>.withFallback(fallbackFunction: ParserFunction<T>): ParserFunction<T>
Link copied to clipboard
internal fun <T, C, R> Convert<T, C>.withRowCellImpl(type: KType, infer: Infer, rowConverter: RowValueExpression<T, C, R>): DataFrame<T>
Link copied to clipboard

Public API to be re-used in compiler plugin implementation

Link copied to clipboard
internal fun <T, G, C> GroupBy<T, G>.xsImpl(vararg keyValues: C, keyColumns: ColumnsSelector<T, C>): GroupBy<T, G>
internal fun <T, C> DataFrame<T>.xsImpl(keyColumns: ColumnsSelector<T, C>, allowMissingColumns: Boolean, vararg keyValues: C): DataFrame<T>