@Override public Spliterator<T> copy() { return new LimitWhileSpliterator<>(CopyableSpliterator.copy(source),predicate); } }
/** * Take elements from a stream while the predicates hold * <pre> * {@code Streams.takeWhile(Stream.of(4,3,6,7).sorted(),i->i<6).collect(CyclopsCollectors.toList()); * //[4,3] * } * </pre> * @param stream * @param predicate * @return */ public static <U> Stream<U> takeWhile(final Stream<U> stream, final Predicate<? super U> predicate) { return StreamSupport.stream(new LimitWhileSpliterator<>(stream.spliterator(), predicate),stream.isParallel()); }
@Override public final ReactiveSeq<T> takeWhile(final Predicate<? super T> p) { return createSeq(new LimitWhileSpliterator<T>(get(), p), reversible); } @Override
@Override public Spliterator<T> copy() { return new LimitWhileSpliterator<>(CopyableSpliterator.copy(source),predicate); } }
/** * Take elements from a stream while the predicates hold * <pre> * {@code Streams.takeWhile(Stream.of(4,3,6,7).sorted(),i->i<6).collect(CyclopsCollectors.toList()); * //[4,3] * } * </pre> * @param stream * @param predicate * @return */ public static <U> Stream<U> takeWhile(final Stream<U> stream, final Predicate<? super U> predicate) { return StreamSupport.stream(new LimitWhileSpliterator<>(stream.spliterator(), predicate),stream.isParallel()); }
@Override public final ReactiveSeq<T> takeWhile(final Predicate<? super T> p) { return createSeq(new LimitWhileSpliterator<T>(get(), p), reversible); } @Override