Package org.apache.druid.segment.virtual
Class RowBasedExpressionColumnValueSelector
- java.lang.Object
-
- org.apache.druid.segment.virtual.BaseExpressionColumnValueSelector
-
- org.apache.druid.segment.virtual.RowBasedExpressionColumnValueSelector
-
- All Implemented Interfaces:
HotLoopCallee
,BaseDoubleColumnValueSelector
,BaseFloatColumnValueSelector
,BaseLongColumnValueSelector
,BaseNullableColumnValueSelector
,BaseObjectColumnValueSelector<ExprEval>
,ColumnValueSelector<ExprEval>
public class RowBasedExpressionColumnValueSelector extends BaseExpressionColumnValueSelector
Expression column value selector that examines a set of 'unknown' type input bindings on a row by row basis, transforming the expression to handle multi-value list typed inputs as they are encountered. Currently, string dimensions are the only bindings which might appear as aString
or aObject
, so numbers are eliminated from the set of 'unknown' bindings to check as they are encountered.
-
-
Field Summary
-
Fields inherited from interface org.apache.druid.segment.ColumnValueSelector
EMPTY_ARRAY
-
-
Constructor Summary
Constructors Constructor Description RowBasedExpressionColumnValueSelector(ExpressionPlan plan, Expr.ObjectBinding bindings, RowIdSupplier rowIdSupplier)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ExprEval<?>
eval()
Implementations override this.-
Methods inherited from class org.apache.druid.segment.virtual.BaseExpressionColumnValueSelector
classOfObject, getDouble, getFloat, getLong, getObject, inspectRuntimeShape, isNull
-
-
-
-
Constructor Detail
-
RowBasedExpressionColumnValueSelector
public RowBasedExpressionColumnValueSelector(ExpressionPlan plan, Expr.ObjectBinding bindings, @Nullable RowIdSupplier rowIdSupplier)
-
-
Method Detail
-
eval
protected ExprEval<?> eval()
Description copied from class:BaseExpressionColumnValueSelector
Implementations override this.- Specified by:
eval
in classBaseExpressionColumnValueSelector
-
-