private RelNode copyOf(LogicalWindow window) { final RelNode input = window.getInput().accept(this); return new LogicalWindow( cluster, copyOf(window.getTraitSet()), input, Lists.transform(window.constants, COPY_REX_LITERAL), copyOf(window.getRowType()), window.groups ); }
@SuppressWarnings("unused") // Called through reflection public Set<RelColumnOrigin> getColumnOrigins(LogicalWindow window, RelMetadataQuery mq, int iOutputColumn) { final RelNode inputRel = window.getInput(); final int numFieldsInInput = inputRel.getRowType().getFieldCount(); if (iOutputColumn < numFieldsInInput) {
public RelNode convert(RelNode rel) { final LogicalWindow winAgg = (LogicalWindow) rel; final RelTraitSet traitSet = winAgg.getTraitSet().replace(EnumerableConvention.INSTANCE); final RelNode child = winAgg.getInput(); final RelNode convertedChild = convert(child, child.getTraitSet().replace(EnumerableConvention.INSTANCE)); return new EnumerableWindow(rel.getCluster(), traitSet, convertedChild, winAgg.getConstants(), winAgg.getRowType(), winAgg.groups); } }
public RelNode convert(RelNode rel) { final LogicalWindow winAgg = (LogicalWindow) rel; final RelTraitSet traitSet = winAgg.getTraitSet().replace(BindableConvention.INSTANCE); final RelNode input = winAgg.getInput(); final RelNode convertedInput = convert(input, input.getTraitSet().replace(BindableConvention.INSTANCE)); return new BindableWindow(rel.getCluster(), traitSet, convertedInput, winAgg.getConstants(), winAgg.getRowType(), winAgg.groups); } }
public RelNode convert(RelNode rel) { final LogicalWindow winAgg = (LogicalWindow) rel; final RelTraitSet traitSet = winAgg.getTraitSet().replace(EnumerableConvention.INSTANCE); final RelNode child = winAgg.getInput(); final RelNode convertedChild = convert(child, child.getTraitSet().replace(EnumerableConvention.INSTANCE)); return new EnumerableWindow(rel.getCluster(), traitSet, convertedChild, winAgg.getConstants(), winAgg.getRowType(), winAgg.groups); } }
public RelNode convert(RelNode rel) { final LogicalWindow winAgg = (LogicalWindow) rel; final RelTraitSet traitSet = winAgg.getTraitSet().replace(BindableConvention.INSTANCE); final RelNode input = winAgg.getInput(); final RelNode convertedInput = convert(input, input.getTraitSet().replace(BindableConvention.INSTANCE)); return new BindableWindow(rel.getCluster(), traitSet, convertedInput, winAgg.getConstants(), winAgg.getRowType(), winAgg.groups); } }
private ImmutableBitSet findReference(final LogicalProject project, final LogicalWindow window) { final int windowInputColumn = window.getInput().getRowType().getFieldCount(); final ImmutableBitSet.Builder beReferred = ImmutableBitSet.builder();
private ImmutableBitSet findReference(final LogicalProject project, final LogicalWindow window) { final int windowInputColumn = window.getInput().getRowType().getFieldCount(); final ImmutableBitSet.Builder beReferred = ImmutableBitSet.builder();
final int fieldCount = rowType.getFieldCount(); final RelNode input = window.getInput(); final int inputFieldCount = input.getRowType().getFieldCount();