Class RexExecutorImpl

  • All Implemented Interfaces:
    RexExecutor

    public class RexExecutorImpl
    extends java.lang.Object
    implements RexExecutor
    Evaluates a RexNode expression.
    • Field Detail

    • Constructor Detail

      • RexExecutorImpl

        public RexExecutorImpl​(DataContext dataContext)
    • Method Detail

      • getExecutable

        public RexExecutable getExecutable​(RexBuilder rexBuilder,
                                           java.util.List<RexNode> exps,
                                           RelDataType rowType)
        Creates an RexExecutable that allows to apply the generated code during query processing (filter, projection).
        Parameters:
        rexBuilder - Rex builder
        exps - Expressions
        rowType - describes the structure of the input row.
      • reduce

        public void reduce​(RexBuilder rexBuilder,
                           java.util.List<RexNode> constExps,
                           java.util.List<RexNode> reducedValues)
        Do constant reduction using generated code.
        Specified by:
        reduce in interface RexExecutor
        Parameters:
        rexBuilder - Rex builder
        constExps - Expressions to be reduced
        reducedValues - List to which reduced expressions are appended