final ImmutableBitSet fieldsUsed, Set<RelDataTypeField> extraFields) { final ImmutableBitSet.Builder fieldsUsedBuilder = fieldsUsed.rebuild();
aggregate.getGroupSet().rebuild();
@Deprecated // to be removed before 2.0 public static Builder builder(ImmutableBitSet bitSet) { return bitSet.rebuild(); }
@Deprecated // to be removed before 2.0 public static Builder builder(ImmutableBitSet bitSet) { return bitSet.rebuild(); }
/** Returns the union of this bit set with another. */ public ImmutableBitSet union(ImmutableBitSet other) { return rebuild() // remember "this" and try to re-use later .addAll(other) .build(other); // try to re-use "other" }
/** Returns a bit set with all the bits in this set that are not in * another. * * @see BitSet#andNot(java.util.BitSet) */ public ImmutableBitSet except(ImmutableBitSet that) { final Builder builder = rebuild(); builder.removeAll(that); return builder.build(); }
/** Returns a bit set with all the bits set in both this set and in * another. * * @see BitSet#and */ public ImmutableBitSet intersect(ImmutableBitSet that) { final Builder builder = rebuild(); builder.intersect(that); return builder.build(); }
/** Returns a bit set with all the bits in this set that are not in * another. * * @see BitSet#andNot(java.util.BitSet) */ public ImmutableBitSet except(ImmutableBitSet that) { final Builder builder = rebuild(); builder.removeAll(that); return builder.build(); }
/** Returns a bit set with all the bits set in both this set and in * another. * * @see BitSet#and */ public ImmutableBitSet intersect(ImmutableBitSet that) { final Builder builder = rebuild(); builder.intersect(that); return builder.build(); }
/** Returns the union of this bit set with another. */ public ImmutableBitSet union(ImmutableBitSet other) { return rebuild() // remember "this" and try to re-use later .addAll(other) .build(other); // try to re-use "other" }
/** Returns the union of this immutable bit set with a {@link BitSet}. */ public ImmutableBitSet union(BitSet other) { return rebuild() // remember "this" and try to re-use later .addAll(BitSets.toIter(other)) .build(); }
/** Returns the union of this immutable bit set with a {@link BitSet}. */ public ImmutableBitSet union(BitSet other) { return rebuild() // remember "this" and try to re-use later .addAll(BitSets.toIter(other)) .build(); }
@Override public RelNode visit(LogicalAggregate aggregate) { RelNode input = aggregate.getInput().accept(this); final RelBuilder relBuilder = newCalciteRelBuilderWithoutContext(aggregate.getCluster()); relBuilder.push(input); RelDataType incomingRowType = input.getRowType(); RelDataTypeField modField = incomingRowType.getField(UPDATE_COLUMN, false, false); ImmutableBitSet newGroupSet = aggregate.getGroupSet().rebuild().set(modField.getIndex()).build(); GroupKey groupKey = relBuilder.groupKey(newGroupSet, aggregate.indicator, null); relBuilder.aggregate(groupKey, aggregate.getAggCallList()); Iterable<RexInputRef> projects = FluentIterable.from(aggregate.getRowType().getFieldNames()) .transform(new Function<String, RexInputRef>() { @Override public RexInputRef apply(String fieldName) { return relBuilder.field(fieldName); } }) .append(relBuilder.field(UPDATE_COLUMN)); relBuilder.project(projects); return relBuilder.build(); }
final ImmutableBitSet fieldsUsed, Set<RelDataTypeField> extraFields) { final ImmutableBitSet.Builder fieldsUsedBuilder = fieldsUsed.rebuild();
final ImmutableBitSet fieldsUsed, Set<RelDataTypeField> extraFields) { final ImmutableBitSet.Builder fieldsUsedBuilder = fieldsUsed.rebuild();
/** * Tests the method * {@link org.apache.calcite.util.ImmutableBitSet#union(ImmutableBitSet)}. */ @Test public void testUnion() { assertThat(ImmutableBitSet.of(1).union(ImmutableBitSet.of(3)).toString(), equalTo("{1, 3}")); assertThat(ImmutableBitSet.of(1).union(ImmutableBitSet.of(3, 100)) .toString(), equalTo("{1, 3, 100}")); ImmutableBitSet x = ImmutableBitSet.of(1) .rebuild() .addAll(ImmutableBitSet.of(2)) .addAll(ImmutableBitSet.of()) .addAll(ImmutableBitSet.of(3)) .build(); assertThat(x.toString(), equalTo("{1, 2, 3}")); }
/** * Tests the method * {@link org.apache.calcite.util.ImmutableBitSet#union(ImmutableBitSet)}. */ @Test public void testUnion() { assertThat(ImmutableBitSet.of(1).union(ImmutableBitSet.of(3)).toString(), equalTo("{1, 3}")); assertThat(ImmutableBitSet.of(1).union(ImmutableBitSet.of(3, 100)) .toString(), equalTo("{1, 3, 100}")); ImmutableBitSet x = ImmutableBitSet.of(1) .rebuild() .addAll(ImmutableBitSet.of(2)) .addAll(ImmutableBitSet.of()) .addAll(ImmutableBitSet.of(3)) .build(); assertThat(x.toString(), equalTo("{1, 2, 3}")); }
final ImmutableBitSet.Builder inputFieldsUsed = fieldsUsed.rebuild(); for (RelFieldCollation field : collation.getFieldCollations()) { inputFieldsUsed.set(field.getFieldIndex());
/** Unit test for * {@link org.apache.calcite.util.ImmutableBitSet.Builder#build(ImmutableBitSet)}. */ @Test public void testBuilderUseOriginal() { final ImmutableBitSet fives = ImmutableBitSet.of(5, 10, 15); final ImmutableBitSet fives1 = fives.rebuild().clear(2).set(10).build(); assertTrue(fives1 == fives); final ImmutableBitSet fives2 = ImmutableBitSet.builder().addAll(fives).clear(2).set(10).build(fives); assertTrue(fives2 == fives); final ImmutableBitSet fives3 = ImmutableBitSet.builder().addAll(fives).clear(2).set(10).build(); assertTrue(fives3 != fives); assertTrue(fives3.equals(fives)); assertTrue(fives3.equals(fives2)); }
/** Unit test for * {@link org.apache.calcite.util.ImmutableBitSet.Builder#build(ImmutableBitSet)}. */ @Test public void testBuilderUseOriginal() { final ImmutableBitSet fives = ImmutableBitSet.of(5, 10, 15); final ImmutableBitSet fives1 = fives.rebuild().clear(2).set(10).build(); assertTrue(fives1 == fives); final ImmutableBitSet fives2 = ImmutableBitSet.builder().addAll(fives).clear(2).set(10).build(fives); assertTrue(fives2 == fives); final ImmutableBitSet fives3 = ImmutableBitSet.builder().addAll(fives).clear(2).set(10).build(); assertTrue(fives3 != fives); assertTrue(fives3.equals(fives)); assertTrue(fives3.equals(fives2)); }