hg: lambda/lambda/jdk: Dramtic simplification of AbstractPipeline: when chaining a stateful
paul.sandoz at oracle.com
paul.sandoz at oracle.com
Mon Dec 10 07:11:47 PST 2012
Changeset: de7c1b2d7645
Author: psandoz
Date: 2012-12-10 16:11 +0100
URL: http://hg.openjdk.java.net/lambda/lambda/jdk/rev/de7c1b2d7645
Dramtic simplification of AbstractPipeline: when chaining a stateful
op on a parallel stream a new stream will be created with a supplier
of a spliterator that defers evaluation to a node from which the
spliterator is obtained.
This also enables arbitrary sequential/parallel declarations.
(Optimization for collection if the source spliterator supplier
is backed by a Node will be added back in a future commit.)
Contributed-by: Brian Goetz <brian.goetz at oracle.com>
Contributed-by: Paul Sandoz <paul.sandoz at oracle.com>
! src/share/classes/java/util/Iterators.java
! src/share/classes/java/util/stream/AbstractPipeline.java
! src/share/classes/java/util/stream/ParallelPipelineHelper.java
! src/share/classes/java/util/stream/PipelineHelper.java
! src/share/classes/java/util/stream/ReferencePipeline.java
! src/share/classes/java/util/stream/StreamShape.java
! src/share/classes/java/util/stream/StreamShapeFactory.java
! src/share/classes/java/util/stream/op/AbstractTask.java
! src/share/classes/java/util/stream/op/CumulateOp.java
! src/share/classes/java/util/stream/op/GroupByOp.java
! src/share/classes/java/util/stream/op/IntermediateOp.java
! src/share/classes/java/util/stream/op/Nodes.java
! src/share/classes/java/util/stream/op/ReduceByOp.java
! src/share/classes/java/util/stream/op/SortedOp.java
! src/share/classes/java/util/stream/op/TreeUtils.java
! src/share/classes/java/util/stream/op/UniqOp.java
! src/share/classes/java/util/stream/primitive/IntCumulateOp.java
! src/share/classes/java/util/stream/primitive/IntSortedOp.java
! src/share/classes/java/util/stream/primitive/IntTreeUtils.java
! src/share/classes/java/util/stream/primitive/Primitives.java
! test-ng/tests/org/openjdk/tests/java/util/stream/OpTestCase.java
! test-ng/tests/org/openjdk/tests/java/util/stream/StreamTestScenario.java
! test-ng/tests/org/openjdk/tests/java/util/stream/op/SequentialOpTest.java
! test-ng/tests/org/openjdk/tests/java/util/stream/op/SortedOpTest.java
! test-ng/tests/org/openjdk/tests/java/util/stream/op/UniqOpTest.java
More information about the lambda-dev
mailing list