Interface RexExecutor

All Known Subinterfaces:
RelOptPlanner.Executor
All Known Implementing Classes:
RexExecutorImpl

public interface RexExecutor
Can reduce expressions, writing a literal for each into a list.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    reduce(RexBuilder rexBuilder, List<RexNode> constExps, List<RexNode> reducedValues)
    Reduces expressions, and writes their results into reducedValues.
  • Method Details

    • reduce

      void reduce(RexBuilder rexBuilder, List<RexNode> constExps, List<RexNode> reducedValues)
      Reduces expressions, and writes their results into reducedValues.

      If an expression cannot be reduced, writes the original expression. For example, CAST('abc' AS INTEGER) gives an error when executed, so the executor ignores the error and writes the original expression.

      Parameters:
      rexBuilder - Rex builder
      constExps - Expressions to be reduced
      reducedValues - List to which reduced expressions are appended