Package org.apache.calcite.rex
Class RexExecutorImpl
java.lang.Object
org.apache.calcite.rex.RexExecutorImpl
- All Implemented Interfaces:
RexExecutor
Evaluates a
RexNode expression.
For this impl, all the public methods should be
static except that it inherits from RexExecutor.
This pretends that other code in the project assumes
the executor instance is RexExecutorImpl.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic RexExecutablegetExecutable(RexBuilder rexBuilder, List<RexNode> exps, RelDataType rowType) Creates anRexExecutablethat allows to apply the generated code during query processing (filter, projection).voidDo constant reduction using generated code.
-
Constructor Details
-
RexExecutorImpl
-
-
Method Details
-
getExecutable
public static RexExecutable getExecutable(RexBuilder rexBuilder, List<RexNode> exps, RelDataType rowType) Creates anRexExecutablethat allows to apply the generated code during query processing (filter, projection).- Parameters:
rexBuilder- Rex builderexps- ExpressionsrowType- describes the structure of the input row.
-
reduce
Do constant reduction using generated code.- Specified by:
reducein interfaceRexExecutor- Parameters:
rexBuilder- Builder used to construct expressionsconstExps- A list of constant expressionsreducedValues- An empty list. The function will return for each expression on constExps one equivalent reduced expression in this list, in the same order.
-