2327 |
|
|
2328 |
|
// spliterator support |
2329 |
|
|
2330 |
– |
public boolean hasExactSize() { |
2331 |
– |
return false; |
2332 |
– |
} |
2333 |
– |
|
2334 |
– |
public boolean hasExactSplits() { |
2335 |
– |
return false; |
2336 |
– |
} |
2337 |
– |
|
2330 |
|
public long estimateSize() { |
2331 |
|
return batch; |
2332 |
|
} |
2961 |
|
block.accept(nextKey); |
2962 |
|
return true; |
2963 |
|
} |
2964 |
+ |
|
2965 |
+ |
public int characteristics() { |
2966 |
+ |
return Spliterator.DISTINCT | Spliterator.CONCURRENT | |
2967 |
+ |
Spliterator.NONNULL; |
2968 |
+ |
} |
2969 |
+ |
|
2970 |
|
} |
2971 |
|
|
2972 |
|
@SuppressWarnings("serial") static final class ValueIterator<K,V> |
3010 |
|
return true; |
3011 |
|
} |
3012 |
|
|
3013 |
+ |
public int characteristics() { |
3014 |
+ |
return Spliterator.CONCURRENT | Spliterator.NONNULL; |
3015 |
+ |
} |
3016 |
|
} |
3017 |
|
|
3018 |
|
@SuppressWarnings("serial") static final class EntryIterator<K,V> |
3055 |
|
return true; |
3056 |
|
} |
3057 |
|
|
3058 |
+ |
public int characteristics() { |
3059 |
+ |
return Spliterator.DISTINCT | Spliterator.CONCURRENT | |
3060 |
+ |
Spliterator.NONNULL; |
3061 |
+ |
} |
3062 |
|
} |
3063 |
|
|
3064 |
|
/** |
4740 |
|
} |
4741 |
|
|
4742 |
|
public Stream<K> stream() { |
4743 |
< |
return Streams.stream(() -> new KeyIterator<K,V>(map), 0); |
4743 |
> |
return Streams.stream(new KeyIterator<>(map, null)); |
4744 |
|
} |
4745 |
|
public Stream<K> parallelStream() { |
4746 |
< |
return Streams.parallelStream(() -> new KeyIterator<K,V>(map, null), |
4742 |
< |
0); |
4746 |
> |
return Streams.parallelStream(new KeyIterator<K,V>(map, null)); |
4747 |
|
} |
4748 |
|
} |
4749 |
|
|
4795 |
|
} |
4796 |
|
|
4797 |
|
public Stream<V> stream() { |
4798 |
< |
return Streams.stream(() -> new ValueIterator<K,V>(map), 0); |
4798 |
> |
return Streams.stream(new ValueIterator<K,V>(map, null)); |
4799 |
|
} |
4800 |
|
|
4801 |
|
public Stream<V> parallelStream() { |
4802 |
< |
return Streams.parallelStream(() -> new ValueIterator<K,V>(map, null), |
4799 |
< |
0); |
4802 |
> |
return Streams.parallelStream(new ValueIterator<K,V>(map, null)); |
4803 |
|
} |
4804 |
|
|
4805 |
|
} |
4867 |
|
} |
4868 |
|
|
4869 |
|
public Stream<Map.Entry<K,V>> stream() { |
4870 |
< |
return Streams.stream(() -> new EntryIterator<K,V>(map), 0); |
4870 |
> |
return Streams.stream(new EntryIterator<K,V>(map, null)); |
4871 |
|
} |
4872 |
|
|
4873 |
|
public Stream<Map.Entry<K,V>> parallelStream() { |
4874 |
< |
return Streams.parallelStream(() -> new EntryIterator<K,V>(map, null), |
4872 |
< |
0); |
4874 |
> |
return Streams.parallelStream(new EntryIterator<K,V>(map, null)); |
4875 |
|
} |
4876 |
|
} |
4877 |
|
|