@Override public Spliterator<T> spliterator() { return Streams.stream(iterable).limit(limitSize).spliterator(); } };
@Override public Spliterator<T> spliterator() { return Stream.generate(() -> iterable).flatMap(Streams::stream).spliterator(); }
@Override public Spliterator<E> spliterator() { if (iterable != null) { return iterable.spliterator(); } else if (stream != null) { return stream.spliterator(); } else { return Spliterators.spliteratorUnknownSize(it, Spliterator.ORDERED | Spliterator.CONCURRENT); } } }
@Override public Spliterator<T> spliterator() { if (iterable instanceof List) { final List<T> list = (List<T>) iterable; int toSkip = Math.min(list.size(), numberToSkip); return list.subList(toSkip, list.size()).spliterator(); } else { return Streams.stream(iterable).skip(numberToSkip).spliterator(); } } };
@Override public Spliterator<T> spliterator() { return Streams.stream(iterable).limit(limitSize).spliterator(); } };
@Override public Spliterator<T> spliterator() { return Stream.generate(() -> iterable).flatMap(Streams::stream).spliterator(); }
@Override public Spliterator<T> spliterator() { if (iterable instanceof List) { final List<T> list = (List<T>) iterable; int toSkip = Math.min(list.size(), numberToSkip); return list.subList(toSkip, list.size()).spliterator(); } else { return Streams.stream(iterable).skip(numberToSkip).spliterator(); } } };
private boolean isExternalInit(Symbol.ClassSymbol classSymbol) { return StreamSupport.stream(NullabilityUtil.getAllAnnotations(classSymbol).spliterator(), false) .map((anno) -> anno.getAnnotationType().toString()) .anyMatch(config::isExternalInitClassAnnotation); }
@Override public Spliterator<T> spliterator() { if (iterable instanceof List) { final List<T> list = (List<T>) iterable; int toSkip = Math.min(list.size(), numberToSkip); return list.subList(toSkip, list.size()).spliterator(); } else { return Streams.stream(iterable).skip(numberToSkip).spliterator(); } } };
/** * An analogue of {@link java.util.function.DoubleFunction} also accepting an index. * * <p>This interface is only intended for use by callers of {@link #mapWithIndex(DoubleStream, * DoubleFunctionWithIndex)}. * * @since 21.0 */ @Beta public interface DoubleFunctionWithIndex<R> { /** Applies this function to the given argument and its index within a stream. */ R apply(double from, long index); }
/** * An analogue of {@link java.util.function.DoubleFunction} also accepting an index. * * <p>This interface is only intended for use by callers of {@link #mapWithIndex(DoubleStream, * DoubleFunctionWithIndex)}. * * @since 21.0 */ @Beta public interface DoubleFunctionWithIndex<R> { /** Applies this function to the given argument and its index within a stream. */ R apply(double from, long index); }
/** * An analogue of {@link java.util.function.DoubleFunction} also accepting an index. * * <p>This interface is only intended for use by callers of {@link #mapWithIndex(DoubleStream, * DoubleFunctionWithIndex)}. * * @since 21.0 */ @Beta public interface DoubleFunctionWithIndex<R> { /** Applies this function to the given argument and its index within a stream. */ R apply(double from, long index); }
for (Stream<? extends T> stream : streams) { isParallel |= stream.isParallel(); Spliterator<? extends T> splitr = stream.spliterator(); splitrsBuilder.add(splitr); characteristics &= splitr.characteristics();
private void testMapWithIndex(Function<Collection<String>, Stream<String>> collectionImpl) { SpliteratorTester.of( () -> Streams.mapWithIndex( collectionImpl.apply(ImmutableList.of()), (str, i) -> str + ":" + i) .spliterator()) .expect(ImmutableList.of()); SpliteratorTester.of( () -> Streams.mapWithIndex( collectionImpl.apply(ImmutableList.of("a", "b", "c", "d", "e")), (str, i) -> str + ":" + i) .spliterator()) .expect("a:0", "b:1", "c:2", "d:3", "e:4"); }
public void testConcat_refStream() { assertThat(Streams.concat(Stream.of("a"), Stream.of("b"), Stream.empty(), Stream.of("c", "d"))) .containsExactly("a", "b", "c", "d") .inOrder(); SpliteratorTester.of( () -> Streams.concat(Stream.of("a"), Stream.of("b"), Stream.empty(), Stream.of("c", "d")) .spliterator()) .expect("a", "b", "c", "d"); }
public void testMapWithIndex_intStream() { SpliteratorTester.of( () -> Streams.mapWithIndex(IntStream.of(0, 1, 2), (x, i) -> x + ":" + i).spliterator()) .expect("0:0", "1:1", "2:2"); }
@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() ); }
public void testMapWithIndex_longStream() { SpliteratorTester.of( () -> Streams.mapWithIndex(LongStream.of(0, 1, 2), (x, i) -> x + ":" + i).spliterator()) .expect("0:0", "1:1", "2:2"); }
@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() ); }
@GwtIncompatible // TODO(b/38490623): reenable after GWT double-to-string conversion is fixed public void testMapWithIndex_doubleStream() { SpliteratorTester.of( () -> Streams.mapWithIndex(DoubleStream.of(0, 1, 2), (x, i) -> x + ":" + i).spliterator()) .expect("0.0:0", "1.0:1", "2.0:2"); }