public RelNode convert(RelNode rel) { final LogicalCalc calc = (LogicalCalc) rel; final RelNode input = calc.getInput(); return EnumerableCalc.create( convert(input, input.getTraitSet().replace(EnumerableConvention.INSTANCE)), calc.getProgram()); } }
public RelNode convert(RelNode rel) { final LogicalCalc calc = (LogicalCalc) rel; final RelNode input = calc.getInput(); return EnumerableCalc.create( convert(input, input.getTraitSet().replace(EnumerableConvention.INSTANCE)), calc.getProgram()); } }
enumerable = EnumerableCalc.create(enumerable, program);
enumerable = EnumerableCalc.create(enumerable, program);
enumerable = EnumerableCalc.create(enumerable, program);
public void onMatch(RelOptRuleCall call) { final EnumerableProject project = call.rel(0); final RelNode input = project.getInput(); final RexProgram program = RexProgram.create(input.getRowType(), project.getProjects(), null, project.getRowType(), project.getCluster().getRexBuilder()); final EnumerableCalc calc = EnumerableCalc.create(input, program); call.transformTo(calc); } }
public void onMatch(RelOptRuleCall call) { final EnumerableProject project = call.rel(0); final RelNode input = project.getInput(); final RexProgram program = RexProgram.create(input.getRowType(), project.getProjects(), null, project.getRowType(), project.getCluster().getRexBuilder()); final EnumerableCalc calc = EnumerableCalc.create(input, program); call.transformTo(calc); } }
public void onMatch(RelOptRuleCall call) { final EnumerableFilter filter = call.rel(0); final RelNode input = filter.getInput(); // Create a program containing a filter. final RexBuilder rexBuilder = filter.getCluster().getRexBuilder(); final RelDataType inputRowType = input.getRowType(); final RexProgramBuilder programBuilder = new RexProgramBuilder(inputRowType, rexBuilder); programBuilder.addIdentity(); programBuilder.addCondition(filter.getCondition()); final RexProgram program = programBuilder.getProgram(); final EnumerableCalc calc = EnumerableCalc.create(input, program); call.transformTo(calc); } }
public void onMatch(RelOptRuleCall call) { final EnumerableFilter filter = call.rel(0); final RelNode input = filter.getInput(); // Create a program containing a filter. final RexBuilder rexBuilder = filter.getCluster().getRexBuilder(); final RelDataType inputRowType = input.getRowType(); final RexProgramBuilder programBuilder = new RexProgramBuilder(inputRowType, rexBuilder); programBuilder.addIdentity(); programBuilder.addCondition(filter.getCondition()); final RexProgram program = programBuilder.getProgram(); final EnumerableCalc calc = EnumerableCalc.create(input, program); call.transformTo(calc); } }