Class ExpressionConverter

java.lang.Object
org.apache.flink.table.planner.expressions.converter.ExpressionConverter
All Implemented Interfaces:
org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>

public class ExpressionConverter extends Object implements org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>
Visit expression to generator RexNode.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <T> T
    extractValue(org.apache.flink.table.expressions.ValueLiteralExpression literal, Class<T> clazz)
    Extracts a value from a literal.
    static List<org.apache.calcite.rex.RexNode>
    toRexNodes(CallExpressionConvertRule.ConvertContext context, List<org.apache.flink.table.expressions.Expression> expr)
     
    org.apache.calcite.rex.RexNode
    visit(org.apache.flink.table.expressions.CallExpression call)
     
    org.apache.calcite.rex.RexNode
    visit(org.apache.flink.table.expressions.Expression other)
     
    org.apache.calcite.rex.RexNode
    visit(org.apache.flink.table.expressions.FieldReferenceExpression fieldReference)
     
    org.apache.calcite.rex.RexNode
    visit(org.apache.flink.table.expressions.NestedFieldReferenceExpression nestedFieldReference)
     
    org.apache.calcite.rex.RexNode
    visit(org.apache.flink.table.expressions.TypeLiteralExpression typeLiteral)
     
    org.apache.calcite.rex.RexNode
    visit(org.apache.flink.table.expressions.ValueLiteralExpression valueLiteral)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ExpressionConverter

      public ExpressionConverter(RelBuilder relBuilder)
  • Method Details

    • visit

      public org.apache.calcite.rex.RexNode visit(org.apache.flink.table.expressions.CallExpression call)
      Specified by:
      visit in interface org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>
    • visit

      public org.apache.calcite.rex.RexNode visit(org.apache.flink.table.expressions.ValueLiteralExpression valueLiteral)
      Specified by:
      visit in interface org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>
    • visit

      public org.apache.calcite.rex.RexNode visit(org.apache.flink.table.expressions.FieldReferenceExpression fieldReference)
      Specified by:
      visit in interface org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>
    • visit

      public org.apache.calcite.rex.RexNode visit(org.apache.flink.table.expressions.NestedFieldReferenceExpression nestedFieldReference)
      Specified by:
      visit in interface org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>
    • visit

      public org.apache.calcite.rex.RexNode visit(org.apache.flink.table.expressions.TypeLiteralExpression typeLiteral)
      Specified by:
      visit in interface org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>
    • visit

      public org.apache.calcite.rex.RexNode visit(org.apache.flink.table.expressions.Expression other)
      Specified by:
      visit in interface org.apache.flink.table.expressions.ExpressionVisitor<org.apache.calcite.rex.RexNode>
    • toRexNodes

      public static List<org.apache.calcite.rex.RexNode> toRexNodes(CallExpressionConvertRule.ConvertContext context, List<org.apache.flink.table.expressions.Expression> expr)
    • extractValue

      public static <T> T extractValue(org.apache.flink.table.expressions.ValueLiteralExpression literal, Class<T> clazz)
      Extracts a value from a literal. Including planner-specific instances such as DecimalData.