public void testToImmutableRangeSet() { Range<Integer> rangeOne = Range.closedOpen(1, 5); Range<Integer> rangeTwo = Range.openClosed(6, 7); ImmutableRangeSet<Integer> ranges = ImmutableRangeSet.copyOf(ImmutableList.of(rangeOne, rangeTwo)); CollectorTester.of(ImmutableRangeSet.<Integer>toImmutableRangeSet()) .expectCollects(ranges, rangeOne, rangeTwo); } }
/** Intersect two integer spaces together. */ public IntegerSpace intersection(IntegerSpace other) { return new IntegerSpace( other._rangeset.asRanges().stream() .map(_rangeset::subRangeSet) // intersect individual ranges with _rangeset .map(RangeSet::asRanges) // flatten each intersection result to set of ranges .flatMap(Set::stream) // stream for collection .collect(ImmutableRangeSet.toImmutableRangeSet())); }
public void testToImmutableRangeSet() { Range<Integer> rangeOne = Range.closedOpen(1, 5); Range<Integer> rangeTwo = Range.openClosed(6, 7); ImmutableRangeSet<Integer> ranges = ImmutableRangeSet.copyOf(ImmutableList.of(rangeOne, rangeTwo)); CollectorTester.of(ImmutableRangeSet.<Integer>toImmutableRangeSet()) .expectCollects(ranges, rangeOne, rangeTwo); } }