More Related Content
Similar to On stream-lazy-computation (14)
More from Shinya Mochida (20)
On stream-lazy-computation
- 10. public final <R> Stream map(
Function<? super P_OUT, ? extends R> mapper) {
return
new StatelessOp<P_OUT, R>(this, …) {
@Override Sink<P_OUT> opWrapSink(int flags, Sink<R> sink) {
return new Sink.ChainedReference<P_OUT, R>(sink) {
public void accept(P_OUT u) {downSink.accept(mapper.apply(u));}
}
Streamパイプラインがやってい
ること
返されるStreamの無名クラスの中に
埋め込む形で処理を保持する
- 11. public final <R> Stream map(
Function<? super P_OUT, ? extends R> mapper) {
return
new StatelessOp<P_OUT, R>(this, …) {
@Override Sink<P_OUT> opWrapSink(int flags, Sink<R> sink) {
return new Sink.ChainedReference<P_OUT, R>(sink) {
public void accept(P_OUT u) {downSink.accept(mapper.apply(u));}
}
- 12. public final <R> Stream map(
Function<? super P_OUT, ? extends R> mapper) {
return
new StatelessOp<P_OUT, R>(this, …) {
@Override Sink<P_OUT> opWrapSink(int flags, Sink<R> sink) {
return new Sink.ChainedReference<P_OUT, R>(sink) {
public void accept(P_OUT u) {downSink.accept(mapper.apply(u));}
}
Sinkの合成