public List<RelCollation> get() { // CALCITE-88 return RelMdCollation.project(cluster.getMetadataQuery(), convertChild, project.getProjects()); } });
@Override public RelNode visit(LogicalProject project) { try { Stacks.push(stack, project); for (RexNode node : project.getProjects()) { node.accept(rexVisitor(project)); } } finally { Stacks.pop(stack, project); } return super.visit(project); }
final List<RexNode> oldProjects = rel.getProjects(); final List<RelDataTypeField> relOutput = rel.getRowType().getFieldList();
@Override public void onMatch(RelOptRuleCall call) { final LogicalProject project = call.rel(0); final FlowFileTableScan scan = call.rel(1); final int[] fields = getProjectFields(project.getProjects()); if (fields == null) { // Project contains expressions more complex than just field references. return; } call.transformTo( new FlowFileTableScan( scan.getCluster(), scan.getTable(), scan.flowFileTable, fields)); }
List<RexNode> projExprs = project.getProjects(); if (projExprs.size() != 1) { return;
List<RexNode> aggOutputProjExprs = aggOutputProject.getProjects(); if (aggOutputProjExprs.size() != 1) { return;
public RelNode convert(RelNode rel) { LogicalProject project = (LogicalProject) rel; return new JdbcRules.JdbcProject(rel.getCluster(), rel.getTraitSet().replace(this.out), convert( project.getInput(), project.getInput().getTraitSet().replace(this.out).simplify()), project.getProjects(), project.getRowType()); }
@Override public RelNode convert(final RelNode rel) { // KYLIN-3281 // OLAPProjectRule can't normal working with projectRel[input=sortRel] final LogicalProject project = (LogicalProject) rel; final RelNode convertChild = convert(project.getInput(), project.getInput().getTraitSet().replace(OLAPRel.CONVENTION)); final RelOptCluster cluster = convertChild.getCluster(); final RelTraitSet traitSet = cluster.traitSet().replace(OLAPRel.CONVENTION) .replaceIfs(RelCollationTraitDef.INSTANCE, new Supplier<List<RelCollation>>() { public List<RelCollation> get() { // CALCITE-88 return RelMdCollation.project(cluster.getMetadataQuery(), convertChild, project.getProjects()); } }); return new OLAPProjectRel(convertChild.getCluster(), traitSet, convertChild, project.getProjects(), project.getRowType()); } }
final List<RexNode> aggOutputProjects = aggOutputProject.getProjects(); if (aggOutputProjects.size() != 1) { return; final List<RexNode> aggInputProjects = aggInputProject.getProjects();
if (project.getProjects().size() != 1) { return;
@Override public RelNode visit(LogicalProject project) { try { stack.push(project); for (RexNode node : project.getProjects()) { node.accept(rexVisitor(project)); } } finally { stack.pop(); } return super.visit(project); }
public List<RelCollation> get() { // CALCITE-88 return RelMdCollation.project(cluster.getMetadataQuery(), convertChild, project.getProjects()); } });
@Override public RelNode visit(LogicalProject project) { try { stack.push(project); for (RexNode node : project.getProjects()) { node.accept(rexVisitor(project)); } } finally { stack.pop(); } return super.visit(project); }
@Override public RelNode visit(LogicalProject project) { final RelNode input = project.getInput().accept(this); return new LogicalProject( cluster, copyOf(project.getTraitSet()), input, Lists.transform(project.getProjects(), COPY_REX_NODE), copyOf(project.getRowType()) ); }
public RelNode convert(RelNode rel) { final LogicalProject project = (LogicalProject) rel; return EnumerableProject.create( convert(project.getInput(), project.getInput().getTraitSet() .replace(EnumerableConvention.INSTANCE)), project.getProjects(), project.getRowType()); } }
public RelNode convert(RelNode rel) { final LogicalProject project = (LogicalProject) rel; return EnumerableProject.create( convert(project.getInput(), project.getInput().getTraitSet() .replace(EnumerableConvention.INSTANCE)), project.getProjects(), project.getRowType()); } }
public void rewriteRel(LogicalProject rel) { final List<Pair<RexNode, String>> flattenedExpList = new ArrayList<>(); flattenProjections(new RewriteRexShuttle(), rel.getProjects(), rel.getRowType().getFieldNames(), "", flattenedExpList); relBuilder.push(getNewForOldRel(rel.getInput())) .projectNamed(Pair.left(flattenedExpList), Pair.right(flattenedExpList), true); setNewForOldRel(rel, relBuilder.build()); }
public void rewriteRel(LogicalProject rel) { final List<Pair<RexNode, String>> flattenedExpList = new ArrayList<>(); flattenProjections(new RewriteRexShuttle(), rel.getProjects(), rel.getRowType().getFieldNames(), "", flattenedExpList); relBuilder.push(getNewForOldRel(rel.getInput())) .projectNamed(Pair.left(flattenedExpList), Pair.right(flattenedExpList), true); setNewForOldRel(rel, relBuilder.build()); }
public RelNode convert(RelNode rel) { final LogicalProject project = (LogicalProject) rel; return new BindableProject(rel.getCluster(), rel.getTraitSet().replace(BindableConvention.INSTANCE), convert(project.getInput(), project.getInput().getTraitSet() .replace(BindableConvention.INSTANCE)), project.getProjects(), project.getRowType()); } }
public RelNode convert(RelNode rel) { final LogicalProject project = (LogicalProject) rel; return new BindableProject(rel.getCluster(), rel.getTraitSet().replace(BindableConvention.INSTANCE), convert(project.getInput(), project.getInput().getTraitSet() .replace(BindableConvention.INSTANCE)), project.getProjects(), project.getRowType()); } }