Iterable<E>.withIterator constructor
- @Since("3.8")
- Iterator<
E> iteratorFactory()
Creates an Iterable from the Iterator factory.
The returned iterable creates a new iterator each time iterator is read,
by calling the provided iteratorFactory
function. The iteratorFactory
function must return a new instance of Iterator<E>
on each call.
This factory is useful when you need to create an iterable from a custom iterator, or when you want to ensure a fresh iteration state on each use.
Example:
final numbers = Iterable.withIterator(() => [1, 2, 3].iterator);
print(numbers.toList()); // [1, 2, 3]
Implementation
@Since("3.8")
factory Iterable.withIterator(Iterator<E> Function() iteratorFactory) =
_WithIteratorIterable<E>;