/** * Creates a HiveProject. * * @param cluster * Cluster this relational expression belongs to * @param child * input relational expression * @param exps * List of expressions for the input columns * @param rowType * output row type * @param flags * values as in {@link Project.Flags} */ public HiveProject(RelOptCluster cluster, RelTraitSet traitSet, RelNode child, List<? extends RexNode> exps, RelDataType rowType, int flags) { super(cluster, traitSet, child, exps, rowType, flags); assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); virtualCols = ImmutableList.copyOf(HiveCalciteUtil.getVirtualCols(exps)); }
@Override public Filter copy(RelTraitSet traitSet, RelNode input, RexNode condition) { assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); return new HiveFilter(getCluster(), traitSet, input, condition); }
@Override public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs) { assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); return new HiveMultiJoin( getCluster(), inputs, condition, rowType, joinInputs, joinTypes, filters); }
@Override public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs) { assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); return new HiveMultiJoin( getCluster(), inputs, condition, rowType, joinInputs, joinTypes, filters); }
@Override public Filter copy(RelTraitSet traitSet, RelNode input, RexNode condition) { assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); return new HiveFilter(getCluster(), traitSet, input, condition); }
/** * Creates a HiveProject. * * @param cluster * Cluster this relational expression belongs to * @param child * input relational expression * @param exps * List of expressions for the input columns * @param rowType * output row type * @param flags * values as in {@link Project.Flags} */ public HiveProject(RelOptCluster cluster, RelTraitSet traitSet, RelNode child, List<? extends RexNode> exps, RelDataType rowType, int flags) { super(cluster, traitSet, child, exps, rowType, flags); assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); virtualCols = ImmutableList.copyOf(HiveCalciteUtil.getVirtualCols(exps)); }
@Override public Project copy(RelTraitSet traitSet, RelNode input, List<RexNode> exps, RelDataType rowType) { assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); HiveProject hp = new HiveProject(getCluster(), traitSet, input, exps, rowType, getFlags()); if (this.isSynthetic()) { hp.setSynthetic(); } return hp; }
@Override public Project copy(RelTraitSet traitSet, RelNode input, List<RexNode> exps, RelDataType rowType) { assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); HiveProject hp = new HiveProject(getCluster(), traitSet, input, exps, rowType, getFlags()); if (this.isSynthetic()) { hp.setSynthetic(); } return hp; }
private LogicalSort(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, RelCollation collation, RexNode offset, RexNode fetch) { super(cluster, traitSet, input, collation, offset, fetch); assert traitSet.containsIfApplicable(Convention.NONE); }
private LogicalSort(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, RelCollation collation, RexNode offset, RexNode fetch) { super(cluster, traitSet, input, collation, offset, fetch); assert traitSet.containsIfApplicable(Convention.NONE); }
@Override public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs) { assert traitSet.containsIfApplicable(Convention.NONE); assert inputs.isEmpty(); return this; }
@Override public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs) { assert traitSet.containsIfApplicable(Convention.NONE); assert inputs.isEmpty(); return this; }
@Override public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs) { assert traitSet.containsIfApplicable(Convention.NONE); assert inputs.isEmpty(); return new LogicalValues(getCluster(), traitSet, rowType, tuples); }
@Override public LogicalAggregate copy(RelTraitSet traitSet, RelNode input, boolean indicator, ImmutableBitSet groupSet, List<ImmutableBitSet> groupSets, List<AggregateCall> aggCalls) { assert traitSet.containsIfApplicable(Convention.NONE); return new LogicalAggregate(getCluster(), traitSet, input, indicator, groupSet, groupSets, aggCalls); }
@Override public LogicalMinus copy(RelTraitSet traitSet, List<RelNode> inputs, boolean all) { assert traitSet.containsIfApplicable(Convention.NONE); return new LogicalMinus(getCluster(), traitSet, inputs, all); }
public LogicalUnion copy( RelTraitSet traitSet, List<RelNode> inputs, boolean all) { assert traitSet.containsIfApplicable(Convention.NONE); return new LogicalUnion(getCluster(), traitSet, inputs, all); }
@Override public LogicalCorrelate copy(RelTraitSet traitSet, RelNode left, RelNode right, CorrelationId correlationId, ImmutableBitSet requiredColumns, SemiJoinType joinType) { assert traitSet.containsIfApplicable(Convention.NONE); return new LogicalCorrelate(getCluster(), traitSet, left, right, correlationId, requiredColumns, joinType); }
@Override public Project copy(RelTraitSet traitSet, RelNode input, List<RexNode> exps, RelDataType rowType) { assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION); return new HiveProject(getCluster(), traitSet, input, exps, rowType, getFlags()); }
@Override public LogicalJoin copy(RelTraitSet traitSet, RexNode conditionExpr, RelNode left, RelNode right, JoinRelType joinType, boolean semiJoinDone) { assert traitSet.containsIfApplicable(Convention.NONE); return new LogicalJoin(getCluster(), getCluster().traitSetOf(Convention.NONE), left, right, conditionExpr, variablesSet, joinType, semiJoinDone, systemFieldList); }
@Override public LogicalTableModify copy(RelTraitSet traitSet, List<RelNode> inputs) { assert traitSet.containsIfApplicable(Convention.NONE); return new LogicalTableModify(getCluster(), traitSet, table, catalogReader, sole(inputs), getOperation(), getUpdateColumnList(), getSourceExpressionList(), isFlattened()); } }