Lines Matching refs:spliterator
514 * spliterator. Such characteristic values are not required to be reported
515 * if the spliterator reports {@link Spliterator#SIZED} and this collection
519 * can return a more efficient spliterator. In order to
525 * spliterator's documented policy of binding and structural interference,
527 * methods to create streams using a {@code Supplier} of the spliterator,
530 * Stream<E> s = StreamSupport.stream(() -> spliterator(), spliteratorCharacteristics)
539 * <em><a href="Spliterator.html#binding">late-binding</a></em> spliterator
540 * from the collections's {@code Iterator}. The spliterator inherits the
549 * <p>If a spliterator covers no elements then the reporting of additional
553 * spliterator instance (see {@link Spliterators#emptySpliterator()}) for
554 * empty collections, and enables clients to determine if such a spliterator
561 default Spliterator<E> spliterator() {
562 return Spliterators.spliterator(this, 0);
568 * <p>This method should be overridden when the {@link #spliterator()}
569 * method cannot return a spliterator that is {@code IMMUTABLE},
570 * {@code CONCURRENT}, or <em>late-binding</em>. (See {@link #spliterator()}
581 return StreamSupport.stream(spliterator(), false);
588 * <p>This method should be overridden when the {@link #spliterator()}
589 * method cannot return a spliterator that is {@code IMMUTABLE},
590 * {@code CONCURRENT}, or <em>late-binding</em>. (See {@link #spliterator()}
602 return StreamSupport.stream(spliterator(), true);