< prev index next >

src/java.base/share/classes/java/util/stream/IntPipeline.java

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 168,177 **** --- 168,190 ---- final Node.Builder<Integer> makeNodeBuilder(long exactSizeIfKnown, IntFunction<Integer[]> generator) { return Nodes.intBuilder(exactSizeIfKnown); } + private <U> Stream<U> mapToObj(IntFunction<? extends U> mapper, int opFlags) { + return new ReferencePipeline.StatelessOp<Integer, U>(this, StreamShape.INT_VALUE, opFlags) { + @Override + Sink<Integer> opWrapSink(int flags, Sink<U> sink) { + return new Sink.ChainedInt<U>(sink) { + @Override + public void accept(int t) { + downstream.accept(mapper.apply(t)); + } + }; + } + }; + } // IntStream @Override public final PrimitiveIterator.OfInt iterator() {
*** 185,196 **** // Stateless intermediate ops from IntStream @Override public final LongStream asLongStream() { ! return new LongPipeline.StatelessOp<Integer>(this, StreamShape.INT_VALUE, ! StreamOpFlag.NOT_SORTED | StreamOpFlag.NOT_DISTINCT) { @Override Sink<Integer> opWrapSink(int flags, Sink<Long> sink) { return new Sink.ChainedInt<Long>(sink) { @Override public void accept(int t) { --- 198,208 ---- // Stateless intermediate ops from IntStream @Override public final LongStream asLongStream() { ! return new LongPipeline.StatelessOp<Integer>(this, StreamShape.INT_VALUE, 0) { @Override Sink<Integer> opWrapSink(int flags, Sink<Long> sink) { return new Sink.ChainedInt<Long>(sink) { @Override public void accept(int t) {
*** 201,212 **** }; } @Override public final DoubleStream asDoubleStream() { ! return new DoublePipeline.StatelessOp<Integer>(this, StreamShape.INT_VALUE, ! StreamOpFlag.NOT_SORTED | StreamOpFlag.NOT_DISTINCT) { @Override Sink<Integer> opWrapSink(int flags, Sink<Double> sink) { return new Sink.ChainedInt<Double>(sink) { @Override public void accept(int t) { --- 213,223 ---- }; } @Override public final DoubleStream asDoubleStream() { ! return new DoublePipeline.StatelessOp<Integer>(this, StreamShape.INT_VALUE, 0) { @Override Sink<Integer> opWrapSink(int flags, Sink<Double> sink) { return new Sink.ChainedInt<Double>(sink) { @Override public void accept(int t) {
*** 217,227 **** }; } @Override public final Stream<Integer> boxed() { ! return mapToObj(Integer::valueOf); } @Override public final IntStream map(IntUnaryOperator mapper) { Objects.requireNonNull(mapper); --- 228,238 ---- }; } @Override public final Stream<Integer> boxed() { ! return mapToObj(Integer::valueOf, 0); } @Override public final IntStream map(IntUnaryOperator mapper) { Objects.requireNonNull(mapper);
*** 240,261 **** } @Override public final <U> Stream<U> mapToObj(IntFunction<? extends U> mapper) { Objects.requireNonNull(mapper); ! return new ReferencePipeline.StatelessOp<Integer, U>(this, StreamShape.INT_VALUE, ! StreamOpFlag.NOT_SORTED | StreamOpFlag.NOT_DISTINCT) { ! @Override ! Sink<Integer> opWrapSink(int flags, Sink<U> sink) { ! return new Sink.ChainedInt<U>(sink) { ! @Override ! public void accept(int t) { ! downstream.accept(mapper.apply(t)); ! } ! }; ! } ! }; } @Override public final LongStream mapToLong(IntToLongFunction mapper) { Objects.requireNonNull(mapper); --- 251,261 ---- } @Override public final <U> Stream<U> mapToObj(IntFunction<? extends U> mapper) { Objects.requireNonNull(mapper); ! return mapToObj(mapper, StreamOpFlag.NOT_SORTED | StreamOpFlag.NOT_DISTINCT); } @Override public final LongStream mapToLong(IntToLongFunction mapper) { Objects.requireNonNull(mapper);
< prev index next >