@Override public Spliterator<R> copy() { return new IterableFlatMappingSpliterator<>(CopyableSpliterator.copy(source),mapper); } }
@Override public final <R> ReactiveSeq<R> concatMap(final Function<? super T, ? extends Iterable<? extends R>> fn) { if(this.stream instanceof FunctionSpliterator){ FunctionSpliterator f = (FunctionSpliterator)stream; return createSeq(IterableFlatMappingSpliterator.compose(f,fn),reversible); } return createSeq(new IterableFlatMappingSpliterator<>(get(),fn), Optional.empty()); }
public static <T2,T,R> IterableFlatMappingSpliterator<T2,R> compose(FunctionSpliterator<T2,T> fnS,Function<? super T, ? extends Iterable<? extends R>> mapper){ Function<? super T2,? extends T> fn = fnS.function(); return new IterableFlatMappingSpliterator<T2,R>(CopyableSpliterator.copy(fnS.source()),mapper.<T2>compose(fn)); } @Override
@Override public Spliterator<R> copy() { return new IterableFlatMappingSpliterator<>(CopyableSpliterator.copy(source),mapper); } }
@Override public final <R> ReactiveSeq<R> concatMap(final Function<? super T, ? extends Iterable<? extends R>> fn) { if(this.stream instanceof FunctionSpliterator){ FunctionSpliterator f = (FunctionSpliterator)stream; return createSeq(IterableFlatMappingSpliterator.compose(f,fn),reversible); } return createSeq(new IterableFlatMappingSpliterator<>(get(),fn), Optional.empty()); }
public static <T2,T,R> IterableFlatMappingSpliterator<T2,R> compose(FunctionSpliterator<T2,T> fnS,Function<? super T, ? extends Iterable<? extends R>> mapper){ Function<? super T2,? extends T> fn = fnS.function(); return new IterableFlatMappingSpliterator<T2,R>(CopyableSpliterator.copy(fnS.source()),mapper.<T2>compose(fn)); } @Override