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
-
Method Summary
Modifier and TypeMethodDescriptionstatic RexExecutable
getExecutable
(RexBuilder rexBuilder, List<RexNode> exps, RelDataType rowType) Creates anRexExecutable
that allows to apply the generated code during query processing (filter, projection).void
Do constant reduction using generated code.
-
Constructor Details
-
RexExecutorImpl
-
-
Method Details
-
getExecutable
public static RexExecutable getExecutable(RexBuilder rexBuilder, List<RexNode> exps, RelDataType rowType) Creates anRexExecutable
that 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:
reduce
in interfaceRexExecutor
- Parameters:
rexBuilder
- Rex builderconstExps
- Expressions to be reducedreducedValues
- List to which reduced expressions are appended
-