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,NestedFieldVirtualColumn.RawFieldColumnSelector,NestedFieldVirtualColumn.RawFieldLiteralColumnValueSelector,NilColumnValueSelector,NullableNumericAggregateCombiner,NumericArrayFieldSelector,ObjectAggregateCombiner,ObjectBasedColumnSelector,ObjectColumnSelector,PossiblyNullColumnValueSelector,PossiblyNullDimensionSelector,RowBasedExpressionColumnValueSelector,SettableDimensionValueSelector,SettableDoubleColumnValueSelector,SettableFloatColumnValueSelector,SettableLongColumnValueSelector,SettableObjectColumnValueSelector,SingleLongInputCachingExpressionColumnValueSelector,SingleScanTimeDimensionSelector,SingleStringInputCachingExpressionColumnValueSelector,SingleStringInputDeferredEvaluationExpressionDimensionSelector
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()andBaseLongColumnValueSelector.getLong()to support "polymorphic" rollup aggregation during index merging. "Absent" column, i. e. that always returns zero fromBaseLongColumnValueSelector.getLong(),BaseFloatColumnValueSelector.getFloat()andBaseDoubleColumnValueSelector.getDouble()methods and null fromBaseObjectColumnValueSelector.getObject(), should always be an instance ofNilColumnValueSelector. `selector instanceof NilColumnValueSelector` is the recommended way to check for this condition.
-
-
Field Summary
Fields Modifier and Type Field Description static ColumnValueSelector[]EMPTY_ARRAY
-
Method Summary
-
Methods inherited from interface org.apache.druid.segment.BaseDoubleColumnValueSelector
getDouble
-
Methods inherited from interface org.apache.druid.segment.BaseFloatColumnValueSelector
getFloat
-
Methods inherited from interface org.apache.druid.segment.BaseLongColumnValueSelector
getLong
-
Methods inherited from interface org.apache.druid.segment.BaseNullableColumnValueSelector
isNull
-
Methods inherited from interface org.apache.druid.segment.BaseObjectColumnValueSelector
classOfObject, getObject
-
Methods inherited from interface org.apache.druid.query.monomorphicprocessing.HotLoopCallee
inspectRuntimeShape
-
-
-
-
Field Detail
-
EMPTY_ARRAY
static final ColumnValueSelector[] EMPTY_ARRAY
-
-