Package org.apache.druid.segment
Interface ColumnValueSelector<T>
- All Superinterfaces:
BaseDoubleColumnValueSelector,BaseFloatColumnValueSelector,BaseLongColumnValueSelector,BaseNullableColumnValueSelector,BaseObjectColumnValueSelector<T>,HotLoopCallee
- All Known Subinterfaces:
AggregateCombiner<T>,DimensionSelector,DoubleColumnSelector,FloatColumnSelector,HistoricalColumnSelector<T>,HistoricalDimensionSelector,LongColumnSelector,SettableColumnValueSelector<T>,SingleValueHistoricalDimensionSelector
- All Known Implementing Classes:
AbstractDimensionSelector,BaseExpressionColumnValueSelector,BaseSingleValueDimensionSelector,ConstantDimensionSelector,ConstantExprEvalSelector,ConstantMultiValueDimensionSelector,DoubleAggregateCombiner,DoubleWrappingDimensionSelector,ExpressionColumnValueSelector,ExpressionMultiValueDimensionSelector,FloatWrappingDimensionSelector,GenericFirstAggregateCombiner,GenericLastAggregateCombiner,HyperLogLogCollectorAggregateCombiner,IncrementalIndexRowHolder,IndexedTableColumnValueSelector,IndexedTableDimensionSelector,LongAggregateCombiner,LongSumAggregateCombiner,LongWrappingDimensionSelector,NestedFieldVirtualColumn.FieldDimensionSelector,NilColumnValueSelector,NullableNumericAggregateCombiner,NumericArrayFieldSelector,ObjectAggregateCombiner,ObjectBasedColumnSelector,ObjectColumnSelector,ObjectToArrayColumnValueSelector,ObjectToNumberColumnValueSelector,PossiblyNullColumnValueSelector,PossiblyNullDimensionSelector,RowBasedExpressionColumnValueSelector,SettableDimensionValueSelector,SettableDoubleColumnValueSelector,SettableFloatColumnValueSelector,SettableLongColumnValueSelector,SettableObjectColumnValueSelector,ShimMultiValueDimensionSelector,ShimNumericColumnValueSelector,ShimObjectColumnValueSelector,ShimSingleValueDimensionSelector,ShimVectorObjectDimSelector,SingleLongInputCachingExpressionColumnValueSelector,SingleScanTimeDimensionSelector,SingleStringInputCachingExpressionColumnValueSelector,SingleStringInputDeferredEvaluationExpressionDimensionSelector,TrackingColumnValueSelector,TrackingDimensionSelector
public interface ColumnValueSelector<T>
extends BaseLongColumnValueSelector, BaseDoubleColumnValueSelector, BaseFloatColumnValueSelector, BaseObjectColumnValueSelector<T>
Base type for interfaces that manage column value selection, e.g.
DimensionSelector, LongColumnSelector.
This interface has methods to get the value in all primitive types, that have corresponding basic aggregators in
Druid: Sum, Min, Max, etc: BaseFloatColumnValueSelector.getFloat(), BaseDoubleColumnValueSelector.getDouble() and BaseLongColumnValueSelector.getLong() to support "polymorphic"
rollup aggregation during index merging.
"Absent" column, i. e. that always returns zero from BaseLongColumnValueSelector.getLong(), BaseFloatColumnValueSelector.getFloat() and BaseDoubleColumnValueSelector.getDouble()
methods and null from BaseObjectColumnValueSelector.getObject(), should always be an instance of NilColumnValueSelector.
`selector instanceof NilColumnValueSelector` is the recommended way to check for this condition.-
Field Summary
Fields -
Method Summary
Methods inherited from interface org.apache.druid.segment.BaseDoubleColumnValueSelector
getDoubleMethods inherited from interface org.apache.druid.segment.BaseFloatColumnValueSelector
getFloatMethods inherited from interface org.apache.druid.segment.BaseLongColumnValueSelector
getLongMethods inherited from interface org.apache.druid.segment.BaseNullableColumnValueSelector
isNullMethods inherited from interface org.apache.druid.segment.BaseObjectColumnValueSelector
classOfObject, getObjectMethods inherited from interface org.apache.druid.query.monomorphicprocessing.HotLoopCallee
inspectRuntimeShape
-
Field Details
-
EMPTY_ARRAY
-