Class RexPermuteInputsShuttle

java.lang.Object
org.apache.calcite.rex.RexShuttle
org.apache.calcite.rex.RexPermuteInputsShuttle
All Implemented Interfaces:
RexVisitor<RexNode>

public class RexPermuteInputsShuttle extends RexShuttle
Shuttle which applies a permutation to its input fields.
See Also:
  • Constructor Details

    • RexPermuteInputsShuttle

      public RexPermuteInputsShuttle(Mappings.TargetMapping mapping, RelNode... inputs)
      Creates a RexPermuteInputsShuttle.

      The mapping provides at most one target for every source. If a source has no targets and is referenced in the expression, Mappings.TargetMapping.getTarget(int) will give an error. Otherwise the mapping gives a unique target.

      Parameters:
      mapping - Mapping
      inputs - Input relational expressions
    • RexPermuteInputsShuttle

      public RexPermuteInputsShuttle(Mappings.TargetMapping mapping, boolean shouldMatchTargetType, RelNode... inputs)
      Creates a RexPermuteInputsShuttle.

      The mapping provides at most one target for every source.

      Parameters:
      mapping - Mapping
      shouldMatchTargetType - If false, each input reference is substituted with a reference retaining the original input's type. If true, each input reference is substituted with a reference matching the target type.
      inputs - Input relational expressions
  • Method Details