/** * {@inheritDoc} * * <p>This method returns a serializable {@code ImmutableSortedSet}. * * <p>The {@link SortedSet#headSet} documentation states that a subset of a subset throws an * {@link IllegalArgumentException} if passed a {@code toElement} greater than an earlier {@code * toElement}. However, this method doesn't throw an exception in that situation, but instead * keeps the original {@code toElement}. */ @Override public ImmutableSortedSet<E> headSet(E toElement) { return headSet(toElement, false); }
@Override protected SortedSet<String> create(String[] elements) { List<String> list = Lists.newArrayList(elements); list.add("zzz"); return ImmutableSortedSet.copyOf(list).headSet("zzy"); } }
/** * {@inheritDoc} * * <p>This method returns a serializable {@code ImmutableSortedSet}. * * <p>The {@link SortedSet#headSet} documentation states that a subset of a subset throws an * {@link IllegalArgumentException} if passed a {@code toElement} greater than an earlier {@code * toElement}. However, this method doesn't throw an exception in that situation, but instead * keeps the original {@code toElement}. */ @Override public ImmutableSortedSet<E> headSet(E toElement) { return headSet(toElement, false); }
@Override ImmutableSortedSet<E> tailSetImpl(E fromElement, boolean inclusive) { return forward.headSet(fromElement, inclusive).descendingSet(); }
/** @since 12.0 */ @GwtIncompatible // NavigableSet @Override public E lower(E e) { return Iterators.getNext(headSet(e, false).descendingIterator(), null); }
/** @since 12.0 */ @GwtIncompatible // NavigableSet @Override public E floor(E e) { return Iterators.getNext(headSet(e, true).descendingIterator(), null); }
@Override ImmutableSortedSet<E> tailSetImpl(E fromElement, boolean inclusive) { return forward.headSet(fromElement, inclusive).descendingSet(); }
@Override ImmutableSortedSet<E> tailSetImpl(E fromElement, boolean inclusive) { return forward.headSet(fromElement, inclusive).descendingSet(); }
/** @since 12.0 */ @GwtIncompatible // NavigableSet @Override public E lower(E e) { return Iterators.getNext(headSet(e, false).descendingIterator(), null); }
/** @since 12.0 */ @GwtIncompatible // NavigableSet @Override public E floor(E e) { return Iterators.getNext(headSet(e, true).descendingIterator(), null); }
public void testAsSetHeadSet() { ImmutableSortedSet<Integer> expectedSet = ImmutableSortedSet.of(2, 3, 4, 8, 9, 16, 17); ImmutableSortedSet<Integer> asSet = RANGE_SET_ONE.asSet(DiscreteDomain.integers()); for (int i = 0; i <= 20; i++) { assertEquals(asSet.headSet(i, false), expectedSet.headSet(i, false)); assertEquals(asSet.headSet(i, true), expectedSet.headSet(i, true)); } }
public void testHeadSet() { ImmutableSortedSet<Integer> set = ContiguousSet.create(Range.closed(1, 3), integers()); assertThat(set.headSet(1)).isEmpty(); assertThat(set.headSet(2)).containsExactly(1).inOrder(); assertThat(set.headSet(3)).containsExactly(1, 2).inOrder(); assertThat(set.headSet(4)).containsExactly(1, 2, 3).inOrder(); assertThat(set.headSet(Integer.MAX_VALUE)).containsExactly(1, 2, 3).inOrder(); assertThat(set.headSet(1, true)).containsExactly(1).inOrder(); assertThat(set.headSet(2, true)).containsExactly(1, 2).inOrder(); assertThat(set.headSet(3, true)).containsExactly(1, 2, 3).inOrder(); assertThat(set.headSet(4, true)).containsExactly(1, 2, 3).inOrder(); assertThat(set.headSet(Integer.MAX_VALUE, true)).containsExactly(1, 2, 3).inOrder(); }
public void testHeadSetInclusive() { String[] strings = NUMBER_NAMES.toArray(new String[0]); ImmutableSortedSet<String> set = ImmutableSortedSet.copyOf(strings); Arrays.sort(strings); for (int i = 0; i < strings.length; i++) { assertThat(set.headSet(strings[i], true)) .containsExactlyElementsIn(sortedNumberNames(0, i + 1)) .inOrder(); } }
public void testHeadSetExclusive() { String[] strings = NUMBER_NAMES.toArray(new String[0]); ImmutableSortedSet<String> set = ImmutableSortedSet.copyOf(strings); Arrays.sort(strings); for (int i = 0; i < strings.length; i++) { assertThat(set.headSet(strings[i], false)) .containsExactlyElementsIn(sortedNumberNames(0, i)) .inOrder(); } }
/** @since 12.0 */ @GwtIncompatible // NavigableSet @Override public E floor(E e) { return Iterators.getNext(headSet(e, true).descendingIterator(), null); }
/** @since 12.0 */ @GwtIncompatible // NavigableSet @Override public E lower(E e) { return Iterators.getNext(headSet(e, false).descendingIterator(), null); }
@Override protected SortedSet<String> create(String[] elements) { List<String> list = Lists.newArrayList(elements); list.add("zzz"); return ImmutableSortedSet.copyOf(list).headSet("zzy"); } }
/** * @since 12.0 */ @GwtIncompatible("NavigableSet") public E floor(E e) { return Iterators.getNext(headSet(e, true).descendingIterator(), null); }
/** * @since 12.0 */ @GwtIncompatible("NavigableSet") @Override public E lower(E e) { return Iterators.getNext(headSet(e, false).descendingIterator(), null); }
/** * @since 12.0 */ @GwtIncompatible("NavigableSet") @Override public E floor(E e) { return Iterators.getNext(headSet(e, true).descendingIterator(), null); }