DslGrammar
Columns Selection DSL Grammar
Definitions:
columnGroupReference: String| ColumnPath
colSelector: ColumnSelector
colsSelector: ColumnsSelector
column: ColumnAccessor| String| ColumnPath
columnGroup: SingleColumn<DataRow<*>> | String| ColumnPath
columnNoAccessor: String| ColumnPath
columnOrSet: column| columnSet
columnSet: ColumnSet<*>
columnsResolver: ColumnsResolver
condition: ColumnFilter
expression: Column Expression
ignoreCase: Boolean
index: Int
indexRange: IntRange
infer: Infer
kind: ColumnKind
kType: KType
name: String
number: Int
regex: Regex
singleColumn: SingleColumn<DataRow<*>>
T: Column type
text: String
What can be called directly in the Columns Selection DSL:
| all()
| all(Before|After|From|UpTo) ( (column)| { colSelector})
| columnOrSetand[ {] columnOrSet[ }]
| columnOrSet.and(|{ columnOrSet}|)
| (col| valueCol| frameCol| colGroup)[<T>](column| index)
| (cols| valueCols| frameCols| colGroups) [ { condition}]
| cols[<T>](column,.. | index,.. | indexRange)
| colsAtAnyDepth()
| colsInGroups()
| colsOf<T>[ (kType)] [ { condition}]
| colsOfKind(kind,..)[ { condition}]
| expr([name,][infer]) { expression}
| (first|last) [ { condition}]
| single()
| nameContains(text[, ignoreCase] | regex)
| name(Starts|Ends)With(text[, ignoreCase])
| column(.named|.into)(column)
| none()
| withoutNulls()
What can be called on a ColumnSet:
| [index,.. | indexRange]
| .all()
| .all(Before|After|From|UpTo) ( (column)| { condition})
| .and(|{ columnOrSet}|)
| (.col| .valueCol| .frameCol| .colGroup)(index)
| (.cols| .valueCols| .frameCols| .colGroups) [ { condition}]
| .cols(index,.. | indexRange)
| .colsAtAnyDepth()
| .colsInGroups()
| .colsOf<T>[ (kType)] [ { condition}]
| .colsOfKind(kind,..)[ { condition}]
| .distinct()
| .drop(Last)While{ condition}
| except[{ ] columnsResolver[} ]
| (.first|.last) [ { condition}]
| .single()
| .name(Starts|Ends)With(text[, ignoreCase])
| .nameContains(text[, ignoreCase] | regex)
| .simplify()
| .take(Last)While{ condition}
| .withoutNulls()
What can be called on a Column Group (reference):
| .allCols()
| .allCols(Before|After|From|UpTo) ( (column)| { colSelector})
| .allColsExcept{ colsSelector}
| .allColsExcept(columnNoAccessor,..)
| .and(|{ columnOrSet}|)
| (.col| .valueCol| .frameCol| .colGroup)[<T>](column| index)
| (.cols| .valueCols| .frameCols| .colGroups) [ { condition}]
| .cols[<T>](column,.. | index,.. | indexRange)
| .colsAtAnyDepth()
| .colsInGroups()
| .colsName(Starts|Ends)With(text[, ignoreCase])
| .colsNameContains(text[, ignoreCase] | regex)
| .colsOfKind(kind,..)[ { condition}]
| .colsWithoutNulls()
| .drop(Last)ColsWhile{ condition}
| .except{ colsSelector}
| .except(columnNoAccessor,..)
| (.firstCol|.lastCol) [ { condition}]
| .singleCol()
| .select{ colsSelector}
| .take(Last)ColsWhile{ condition}
.colsOf<T>[ (kType)] [ { condition}]