@Override public int characteristics() { return fromSpliterator.characteristics() & ~(Spliterator.DISTINCT | Spliterator.NONNULL | Spliterator.SORTED); } };
@Override public int characteristics() { return fromSpliterator.characteristics() & (Spliterator.ORDERED | Spliterator.SIZED | Spliterator.SUBSIZED); } }
@Override public int characteristics() { return fromSpliterator.characteristics() & (Spliterator.ORDERED | Spliterator.SIZED | Spliterator.SUBSIZED); } }
@Override public int characteristics() { return fromSpliterator.characteristics() & ~(Spliterator.DISTINCT | Spliterator.NONNULL | Spliterator.SORTED); } };
@Override public int characteristics() { return fromSpliterator.characteristics() & (Spliterator.ORDERED | Spliterator.SIZED | Spliterator.SUBSIZED); } }
@Override public int characteristics() { return fromSpliterator.characteristics() & ~(Spliterator.DISTINCT | Spliterator.NONNULL | Spliterator.SORTED); } };
@Override public int characteristics() { return spliterator.characteristics(); } }
@Override public int characteristics() { return fromSpliterator.characteristics() & ~(Spliterator.DISTINCT | Spliterator.NONNULL | Spliterator.SORTED); } };
@Override public int characteristics() { return fromSpliterator.characteristics() & (Spliterator.ORDERED | Spliterator.SIZED | Spliterator.SUBSIZED); } }
public final Ordered expect(Iterable<?> elements) { List<List<E>> resultsForAllStrategies = new ArrayList<>(); Spliterator<E> spliterator = spliteratorSupplier.get(); int characteristics = spliterator.characteristics(); long estimatedSize = spliterator.estimateSize(); for (SpliteratorDecompositionStrategy strategy :
void checkSpliteratorCharacteristics(Spliterator<?> sp, int requiredCharacteristics) { assertEquals(requiredCharacteristics, requiredCharacteristics & sp.characteristics()); }
static <E> Spliterator<E> spliteratorImpl(Multiset<E> multiset) { Spliterator<Entry<E>> entrySpliterator = multiset.entrySet().spliterator(); return CollectSpliterators.flatMap( entrySpliterator, entry -> Collections.nCopies(entry.getCount(), entry.getElement()).spliterator(), Spliterator.SIZED | (entrySpliterator.characteristics() & (Spliterator.ORDERED | Spliterator.NONNULL | Spliterator.IMMUTABLE)), multiset.size()); }
Spliterator<? extends T> splitr = stream.spliterator(); splitrsBuilder.add(splitr); characteristics &= splitr.characteristics(); estimatedSize = LongMath.saturatedAdd(estimatedSize, splitr.estimateSize());
Spliterator<B> splitrB = streamB.spliterator(); int characteristics = splitrA.characteristics() & splitrB.characteristics() & (Spliterator.SIZED | Spliterator.ORDERED); Iterator<A> itrA = Spliterators.iterator(splitrA);
static <E> Spliterator<E> spliteratorImpl(Multiset<E> multiset) { Spliterator<Entry<E>> entrySpliterator = multiset.entrySet().spliterator(); return CollectSpliterators.flatMap( entrySpliterator, entry -> Collections.nCopies(entry.getCount(), entry.getElement()).spliterator(), Spliterator.SIZED | (entrySpliterator.characteristics() & (Spliterator.ORDERED | Spliterator.NONNULL | Spliterator.IMMUTABLE)), multiset.size()); }
@Test void iteratorsStreamCharacteristics() { Iterator<Integer> iterator = asList( 1, 2, 3 ).iterator(); int characteristics = Spliterator.DISTINCT | Spliterator.ORDERED | Spliterator.SORTED; Stream<Integer> stream = Iterators.stream( iterator, characteristics ); assertEquals( characteristics, stream.spliterator().characteristics() ); }
static <E> Spliterator<E> spliteratorImpl(Multiset<E> multiset) { Spliterator<Entry<E>> entrySpliterator = multiset.entrySet().spliterator(); return CollectSpliterators.flatMap( entrySpliterator, entry -> Collections.nCopies(entry.getCount(), entry.getElement()).spliterator(), Spliterator.SIZED | (entrySpliterator.characteristics() & (Spliterator.ORDERED | Spliterator.NONNULL | Spliterator.IMMUTABLE)), multiset.size()); }
@Test void iterablesStreamCharacteristics() { Iterable<Integer> iterable = asList( 1, 2, 3 ); int characteristics = Spliterator.DISTINCT | Spliterator.ORDERED | Spliterator.NONNULL; Stream<Integer> stream = Iterables.stream( iterable, characteristics ); assertEquals( characteristics, stream.spliterator().characteristics() ); }
/** * Spliterator characteristics are as advertised */ public void testSpliterator_characteristics() { LinkedBlockingQueue q = new LinkedBlockingQueue(); Spliterator s = q.spliterator(); int characteristics = s.characteristics(); int required = Spliterator.CONCURRENT | Spliterator.NONNULL | Spliterator.ORDERED; assertEquals(required, characteristics & required); assertTrue(s.hasCharacteristics(required)); assertEquals(0, characteristics & (Spliterator.DISTINCT | Spliterator.IMMUTABLE | Spliterator.SORTED)); }
/** * Spliterator characteristics are as advertised */ public void testSpliterator_characteristics() { BlockingDeque q = newDeque(); Spliterator s = q.spliterator(); int characteristics = s.characteristics(); int required = Spliterator.CONCURRENT | Spliterator.NONNULL | Spliterator.ORDERED; assertEquals(required, characteristics & required); assertTrue(s.hasCharacteristics(required)); assertEquals(0, characteristics & (Spliterator.DISTINCT | Spliterator.IMMUTABLE | Spliterator.SORTED)); }