@Override public SortedMultiset<E> headMultiset(@Nullable E upperBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.upTo(comparator(), upperBound, boundType)), header); }
@Override public SortedMultiset<E> tailMultiset(@Nullable E lowerBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.downTo(comparator(), lowerBound, boundType)), header); }
@Override public SortedMultiset<E> tailMultiset(@NullableDecl E lowerBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.downTo(comparator(), lowerBound, boundType)), header); }
@Override public SortedMultiset<E> tailMultiset(@NullableDecl E lowerBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.downTo(comparator(), lowerBound, boundType)), header); }
@Override public SortedMultiset<E> headMultiset(@NullableDecl E upperBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.upTo(comparator(), upperBound, boundType)), header); }
public void testIntersectAgainstBiggerRange() { GeneralRange<Integer> range = GeneralRange.range(ORDERING, 2, CLOSED, 4, OPEN); assertEquals( GeneralRange.range(ORDERING, 2, CLOSED, 4, OPEN), range.intersect(GeneralRange.range(ORDERING, null, OPEN, 5, CLOSED))); assertEquals( GeneralRange.range(ORDERING, 2, OPEN, 4, OPEN), range.intersect(GeneralRange.range(ORDERING, 2, OPEN, 5, CLOSED))); assertEquals( GeneralRange.range(ORDERING, 2, CLOSED, 4, OPEN), range.intersect(GeneralRange.range(ORDERING, 1, OPEN, 4, OPEN))); }
public void testIntersectNonOverlappingRange() { GeneralRange<Integer> range = GeneralRange.range(ORDERING, 2, OPEN, 4, CLOSED); assertTrue(range.intersect(GeneralRange.range(ORDERING, 5, CLOSED, 6, CLOSED)).isEmpty()); assertTrue(range.intersect(GeneralRange.range(ORDERING, 1, OPEN, 2, OPEN)).isEmpty()); }
public void testIntersectOverlappingRange() { GeneralRange<Integer> range = GeneralRange.range(ORDERING, 2, OPEN, 4, CLOSED); assertEquals( GeneralRange.range(ORDERING, 3, CLOSED, 4, CLOSED), range.intersect(GeneralRange.range(ORDERING, 3, CLOSED, 5, CLOSED))); assertEquals( GeneralRange.range(ORDERING, 2, OPEN, 3, OPEN), range.intersect(GeneralRange.range(ORDERING, 1, OPEN, 3, OPEN))); }
public void testIntersectAgainstMatchingEndpointsRange() { GeneralRange<Integer> range = GeneralRange.range(ORDERING, 2, CLOSED, 4, OPEN); assertEquals( GeneralRange.range(ORDERING, 2, OPEN, 4, OPEN), range.intersect(GeneralRange.range(ORDERING, 2, OPEN, 4, CLOSED))); }
public void testIntersectAgainstSmallerRange() { GeneralRange<Integer> range = GeneralRange.range(ORDERING, 2, OPEN, 4, OPEN); assertEquals( GeneralRange.range(ORDERING, 3, CLOSED, 4, OPEN), range.intersect(GeneralRange.range(ORDERING, 3, CLOSED, 4, CLOSED))); }
@Override public SortedMultiset<E> headMultiset(E upperBound, BoundType boundType) { checkNotNull(upperBound); return new TreeMultiset<E>( range.intersect(GeneralRange.upTo(comparator, upperBound, boundType)), rootReference); }
@Override public SortedMultiset<E> tailMultiset(E lowerBound, BoundType boundType) { checkNotNull(lowerBound); return new TreeMultiset<E>( range.intersect(GeneralRange.downTo(comparator, lowerBound, boundType)), rootReference); }
@Override public SortedMultiset<E> tailMultiset(@Nullable E lowerBound, BoundType boundType) { return new TreeMultiset<E>(rootReference, range.intersect(GeneralRange.downTo( comparator(), lowerBound, boundType)), header); }
@Override public SortedMultiset<E> headMultiset(@Nullable E upperBound, BoundType boundType) { return new TreeMultiset<E>(rootReference, range.intersect(GeneralRange.upTo( comparator(), upperBound, boundType)), header); }
@Override public SortedMultiset<E> tailMultiset(@Nullable E lowerBound, BoundType boundType) { return new TreeMultiset<E>(rootReference, range.intersect(GeneralRange.downTo( comparator(), lowerBound, boundType)), header); }
@Override public SortedMultiset<E> tailMultiset(@Nullable E lowerBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.downTo(comparator(), lowerBound, boundType)), header); }
@Override public SortedMultiset<E> headMultiset(@Nullable E upperBound, BoundType boundType) { return new TreeMultiset<E>(rootReference, range.intersect(GeneralRange.upTo( comparator(), upperBound, boundType)), header); }
@Override public SortedMultiset<E> tailMultiset(@Nullable E lowerBound, BoundType boundType) { return new TreeMultiset<E>(rootReference, range.intersect(GeneralRange.downTo( comparator(), lowerBound, boundType)), header); }
@Override public SortedMultiset<E> headMultiset(@Nullable E upperBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.upTo(comparator(), upperBound, boundType)), header); }
@Override public SortedMultiset<E> tailMultiset(@NullableDecl E lowerBound, BoundType boundType) { return new TreeMultiset<E>( rootReference, range.intersect(GeneralRange.downTo(comparator(), lowerBound, boundType)), header); }