hg: lambda/lambda/jdk: - remove Spliterator.iterator(), see Streams.iteratorFrom for equivalent

Brian Goetz brian.goetz at oracle.com
Tue Jan 22 10:10:51 PST 2013


Doug and I have been working on the form for Spliterator.  We've combined the advance/get methods into tryAdvance, which sends the next element (if present) to the provided Block.  So there is:

  trySplit -> return spliterator or null
  tryAdvance(Block) -> send element to Block if present; return whether there was an element
  forEach(Block) -> send remaning elements to Block

On Jan 21, 2013, at 11:07 AM, Remi Forax wrote:

> Paul (or Brian),
> can you explain how tryAdvance work ?
> 
> Rémi
> 
> On 01/21/2013 04:17 PM, paul.sandoz at oracle.com wrote:
>> Changeset: 31fea8a84b52
>> Author:    psandoz
>> Date:      2013-01-21 16:17 +0100
>> URL:       http://hg.openjdk.java.net/lambda/lambda/jdk/rev/31fea8a84b52
>> 
>> - remove Spliterator.iterator(), see Streams.iteratorFrom for equivalent
>> functionality.
>> - Stream.iterator() becomes a default method adapting the spliterator
>> to an iterator.
>> - consolidate spliterator tests for ref and primitives.
>> (Certain spliterator tests are disabled until constraints on
>> intermixing tryAdvance/forEach and multiple calls to forEach
>> are resolved.)
>> 
>> ! src/share/classes/java/util/Spliterator.java
>> ! src/share/classes/java/util/stream/AbstractPipeline.java
>> ! src/share/classes/java/util/stream/BaseStream.java
>> ! src/share/classes/java/util/stream/DoublePipeline.java
>> ! src/share/classes/java/util/stream/DoubleStream.java
>> ! src/share/classes/java/util/stream/IntPipeline.java
>> ! src/share/classes/java/util/stream/IntStream.java
>> ! src/share/classes/java/util/stream/LongPipeline.java
>> ! src/share/classes/java/util/stream/LongStream.java
>> ! src/share/classes/java/util/stream/Node.java
>> ! src/share/classes/java/util/stream/Nodes.java
>> ! src/share/classes/java/util/stream/ReferencePipeline.java
>> ! src/share/classes/java/util/stream/SpinedBuffer.java
>> ! src/share/classes/java/util/stream/Spliterators.java
>> ! src/share/classes/java/util/stream/Stream.java
>> ! src/share/classes/java/util/stream/Streams.java
>> ! test-ng/bootlib/java/util/stream/DoubleStreamTestScenario.java
>> ! test-ng/bootlib/java/util/stream/IntStreamTestScenario.java
>> ! test-ng/bootlib/java/util/stream/LambdaTestHelpers.java
>> ! test-ng/bootlib/java/util/stream/LongStreamTestScenario.java
>> ! test-ng/bootlib/java/util/stream/SpliteratorTestHelper.java
>> ! test-ng/bootlib/java/util/stream/StreamTestScenario.java
>> ! test-ng/boottests/java/util/stream/DoubleNodeTest.java
>> ! test-ng/boottests/java/util/stream/IntNodeTest.java
>> ! test-ng/boottests/java/util/stream/LongNodeTest.java
>> ! test-ng/boottests/java/util/stream/NodeBuilderTest.java
>> ! test-ng/boottests/java/util/stream/NodeTest.java
>> ! test-ng/boottests/java/util/stream/SpinedBufferTest.java
>> ! test-ng/boottests/java/util/stream/ToArrayOpTest.java
>> - test-ng/tests/org/openjdk/tests/java/util/stream/IntSpliteratorTest.java
>> ! test-ng/tests/org/openjdk/tests/java/util/stream/IntStreamSpliteratorTest.java
>> ! test-ng/tests/org/openjdk/tests/java/util/stream/SortedOpTest.java
>> ! test-ng/tests/org/openjdk/tests/java/util/stream/SpliteratorTest.java
>> 
>> 
> 



More information about the lambda-libs-spec-experts mailing list