Class FilterOperand.Predicate
- java.lang.Object
-
- org.apache.pinot.query.runtime.operator.operands.FilterOperand
-
- org.apache.pinot.query.runtime.operator.operands.FilterOperand.Predicate
-
- All Implemented Interfaces:
TransformOperand
- Enclosing class:
- FilterOperand
public static class FilterOperand.Predicate extends FilterOperand
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.pinot.query.runtime.operator.operands.FilterOperand
FilterOperand.And, FilterOperand.IsNotTrue, FilterOperand.IsTrue, FilterOperand.Not, FilterOperand.Or, FilterOperand.Predicate
-
-
Constructor Summary
Constructors Constructor Description Predicate(List<RexExpression> operands, DataSchema dataSchema, IntPredicate comparisonResultPredicate)Predicate constructor also resolve data type, since we don't have an exhausted list of filter function signatures.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Integerapply(Object[] row)-
Methods inherited from class org.apache.pinot.query.runtime.operator.operands.FilterOperand
getResultType
-
-
-
-
Constructor Detail
-
Predicate
public Predicate(List<RexExpression> operands, DataSchema dataSchema, IntPredicate comparisonResultPredicate)
Predicate constructor also resolve data type, since we don't have an exhausted list of filter function signatures. we rely on type casting.- if both RHS and LHS has null data type, exception occurs.
- if either side is null or OBJECT, we best-effort cast data into the other side's data type.
- if either side supertype of the other, we use the super type.
- if we can't resolve a common data type, exception occurs.
-
-
Method Detail
-
apply
@Nullable public Integer apply(Object[] row)
- Specified by:
applyin interfaceTransformOperand- Specified by:
applyin classFilterOperand
-
-