Peekable<T> class
final
An iterator which can use the "peek" to look at the next element of the iterator without consuming it.
- Inheritance
- Available extensions
- ArrayOnIterableExtension
- EnumByName
- FutureIterable
- IterableExtension
- IterableExtensionOverrides
- IterableExtensions
- IterableFutureResultExtension
- IterableResultExtension
- IteratorComparable
- IteratorComparableSelf
- IteratorExtension
- IteratorOnIteratorIterable
- IteratorOnIteratorTUExtension
- IteratorOptionExtension
- IteratorResultExtension
- IteratorResultFuncExtension
- NullableIterableExtensionOverrides
- NullableIterableExtensions
- VecOnIterableExtension
- VecOnIteratorExtension
Properties
- current → T
-
The current element.
no setteroverride
- first → T
-
The first element.
no setterinherited
- firstOrNull → T?
-
Available on Iterable<
The first element of this iterator, orT> , provided by the IterableExtensions extensionnull
if the iterable is empty.no setter - hashCode → int
-
The hash code for this object.
no setterinherited
-
indexed
→ Iter<
(int, T)> -
Available on Iter<
Returns an Iter over the elements of this iterable, paired with their index.T> , provided by the IterableExtensionOverrides extensionno setter -
indexed
→ Iterable<
(int, T)> -
Available on Iterable<
Pairs of elements of the indices and elements of this iterable.T> , provided by the IterableExtensions extensionno setter - isEmpty → bool
-
Whether this collection has no elements.
no setterinherited
- isNotEmpty → bool
-
Whether this collection has at least one element.
no setterinherited
-
iterator
→ Iterator<
T> -
A new
Iterator
that allows iterating the elements of thisIterable
.no setterinherited - last → T
-
The last element.
no setterinherited
- lastOrNull → T?
-
Available on Iterable<
The last element of this iterable, orT> , provided by the IterableExtensions extensionnull
if the iterable is empty.no setter - length → int
-
The number of elements in this Iterable.
no setterinherited
-
nonNulls
→ Iterable<
T> -
Available on Iterable<
The non-T?> , provided by the NullableIterableExtensions extensionnull
elements of this iterable.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- single → T
-
Checks that this iterable has only one element, and returns that element.
no setterinherited
- singleOrNull → T?
-
Available on Iterable<
The single element of this iterator, orT> , provided by the IterableExtensions extensionnull
.no setter -
wait
→ Future<
List< T> > -
Available on Iterable<
Waits for futures in parallel.Future< , provided by the FutureIterable extensionT> >no setter
Methods
-
advanceBy(
int n) → Result< (), int> -
Advances the iterator by n elements.
The iterator will have been advanced by n elements when Ok(()) is returned, or a Err(k)
where k is remaining number of steps that could not be advanced because the iterator ran out.
inherited
-
all(
bool f(T)) → bool -
inherited
-
any(
bool test(T element)) → bool -
Checks whether any element of this iterable satisfies
test
.inherited -
arrayChunks(
int size) → ArrayChunks< T> -
Returns an iterator over N elements of the iterator at a time.
The chunks do not overlap. If N does not divide the length of the iterator, then the last up to N-1 elements will
be omitted and can be retrieved from the
.intoRemainder()
function of the iterator.inherited -
asNameMap(
) → Map< String, T> -
Available on Iterable<
Creates a map from the names of enum values to the values.T> , provided by the EnumByName extension -
byName(
String name) → T -
Available on Iterable<
Finds the enum value in this list with nameT> , provided by the EnumByName extensionname
. -
cast<
U> () → Iter< U> -
Casts this Iter
inherited
-
chain(
Iterator< T> other) → Chain<T> -
Takes two iterators and creates a new iterator over both in sequence.
inherited
-
clone(
) → Peekable< T> -
An iterator which is a "clone" of the original iterator. Iterating through the original or the clone will not affect the other.
Do not modify the original collection the original Iterable is based on while iterating. See Clone for more information.
override
-
cmp(
Iterator< U> other) → int -
Available on Iter<
Lexicographically compares the elements of this Iterator with those of another. Less = -1 Equal = 0 Greater = 1T> , provided by the IteratorComparable extension -
cmpBy<
U> (Iterator< U> other, int f(T, U)) → int -
Lexicographically compares the elements of this Iterator with those of another with respect to the specified comparison function.
Less = -1
Equal = 0
Greater = 1
inherited
-
collectArr(
) → Arr< T> -
inherited
-
collectList(
) → List< T> -
inherited
-
collectSet(
) → Set< T> -
inherited
-
collectVec(
) → Vec< T> -
Available on Iterator<
T> , provided by the VecOnIteratorExtension extension -
contains(
Object? element) → bool -
Whether the collection contains an element equal to
element
.inherited -
count(
) → int -
Counting the number of iterations and returning it.
inherited
-
cycle(
) → Cycle< T> -
Creates an iterator which repeats the elements of the original iterator endlessly.
inherited
-
elementAt(
int index) → T -
Returns the
index
th element.inherited -
elementAtOrNull(
int index) → T? -
Available on Iterable<
The element at positionT> , provided by the IterableExtensions extensionindex
of this iterable, ornull
. -
elementAtOrNull(
int index) → Never -
Available on Iter<
T> , provided by the IterableExtensionOverrides extension -
enumerate(
) → Iter< (int, T)> -
Creates an iterator which gives the current iteration count as well as the next value.
inherited
-
eq<
U> (Iterator< U> other) → bool -
Determines if the elements of this Iterator are equal to those of another using "==".
inherited
-
eqBy<
U> (Iterator< U> other, bool f(T, U)) → bool -
Determines if the elements of this Iterator are equal to those of another with respect to the specified equality function.
inherited
-
every(
bool test(T element)) → bool -
Checks whether every element of this iterable satisfies
test
.inherited -
expand<
U> (Iterable< U> f(T)) → Iter<U> -
Expands each element of this Iter into zero or more elements.
inherited
-
filter(
bool f(T)) → Iter< T> -
Creates an iterator which uses a closure to determine if an element should be yielded.
inherited
-
filterMap<
U extends Object> (Option< U> f(T)) → Iter<U> -
Creates an iterator that both filters and maps.
The returned iterator yields only the values for which the supplied closure returns Some(value).
inherited
-
find(
bool f(T)) → Option< T> -
Searches for an element of an iterator that satisfies a predicate.
inherited
-
findMap<
U extends Object> (Option< U> f(T)) → Option<U> -
Applies the function to the elements of iterator and returns the first non-none result.
inherited
-
firstOrNull(
) → Never -
Available on Iter<
T> , provided by the IterableExtensionOverrides extension -
firstWhere(
bool test(T element), {T orElse()?}) → T -
The first element that satisfies the given predicate
test
.inherited -
flatMap<
U> (Iterator< U> f(T)) → FlatMap<T, U> -
Creates an iterator that works like map, but flattens nested structure.
inherited
-
flatten(
) → Iter< T> -
Available on Iter<
Flatten an iterator of iterators into a single iterator.Iterable< , provided by the IteratorOnIteratorIterable extensionT> > -
fold<
T> (T initialValue, T combine(T previousValue, T element)) → T -
Reduces a collection to a single value by iteratively combining each
element of the collection with an existing value
inherited
-
followedBy(
Iterable< T> other) → Iter<T> -
Creates the lazy concatenation of this Iterator and
other
inherited -
forEach(
void action(T element)) → void -
Invokes
action
on each element of this iterable in iteration order.inherited -
fuse(
) → Iter< T> -
Available on Iter<
Creates an iterator which ends after the first None.Option< , provided by the IteratorOptionExtension extensionT> > -
ge(
Iterator< U> other) → bool -
Available on Iter<
Determines if the elements of this Iterator are lexicographically greater than or equal to those of another.T> , provided by the IteratorComparable extension -
gt(
Iterator< U> other) → bool -
Available on Iter<
Determines if the elements of this Iterator are lexicographically greater than those of another.T> , provided by the IteratorComparable extension -
inspect(
void f(T)) → Iter< T> -
Does something with each element of an iterator, passing the value on.
inherited
-
intersperse(
T element) → Iter< T> -
Creates a new iterator which places a separator between adjacent items of the original iterator.
Similar to join with strings.
inherited
-
intersperseWith(
T f()) → Iter< T> -
Creates a new iterator which places an item generated by separator between adjacent items of the original iterator.
The closure will be called each time to generate the separator.
inherited
-
isPartitioned(
bool f(T)) → bool -
Checks if the elements of this iterator are partitioned according to the given predicate, such that all those that return true precede all those that return false.
inherited
-
isSorted(
) → bool -
Available on Iter<
Checks if the elements of this iterator are sorted. That is, for each element a and its following element b, a <= b must hold. If the iterator yields exactly zero or one element, true is returned.T> , provided by the IteratorComparableSelf extension -
isSortedBy(
int f(T, T)) → bool -
Checks if the elements of this iterator are sorted by f.
That is, for each element f(a,b) and its following element f(b,c), f(a,b) <= f(b,c) must hold. If the iterator yields exactly zero or one element, true is returned.
negative if a < b
zero if a == b
positive if a > b
inherited
-
isSortedByKey<
U extends Comparable< (U> >U f(T)) → bool -
Checks if the elements of this iterator are sorted by a key.
That is, for each element f(a) and its following element f(b), f(a) <= f(b) must hold. If the iterator yields exactly zero or one element, true is returned.
negative if a < b
zero if a == b
positive if a > b
inherited
-
iter(
) → Iter< T> -
Available on Iterable<
Returns an Iter over the Iterable.T> , provided by the IterableExtension extension -
iter(
) → Iter< T> -
Available on Iterator<
Returns an Iter for this Iterator.T> , provided by the IteratorExtension extension -
join(
[String separator = ""]) → String -
Converts each element to a String and concatenates the strings.
inherited
-
lastOrNull(
) → T? -
Available on Iter<
Returns the last element of this iterable, orT> , provided by the IterableExtensionOverrides extensionnull
if the iterable is empty. -
lastOrOption(
) → Option< T> -
Consumes the iterator and returns the last element.
inherited
-
lastWhere(
bool test(T element), {T orElse()?}) → T -
The last element that satisfies the given predicate
test
.inherited -
le(
Iterator< U> other) → bool -
Available on Iter<
Determines if the elements of this Iterator are lexicographically less or equal to those of another.T> , provided by the IteratorComparable extension -
lt(
Iterator< U> other) → bool -
Available on Iter<
Determines if the elements of this Iterator are lexicographically less than those of another.T> , provided by the IteratorComparable extension -
map<
U> (U f(T)) → Iter< U> -
Maps each element of this Iter to a new Iter
inherited
-
mapWhile<
U extends Object> (Option< U> f(T)) → Iter<U> -
Creates an iterator that both yields elements based on a predicate and maps.
It will call this closure on each element of the iterator, and yield elements while it returns Some(_).
inherited
-
mapWindows<
U> (int size, U f(Arr< T> )) → Iter<U> -
Calls the given function f for each contiguous window of
size
over self and returns an iterator over the outputs of f e.g.1, 2, 3, 4
with size 2 will yield windows of1, 2
,2, 3
,3, 4
The windows indicies should be treated as immutable, as they are shared between calls to minize allocations. Therefore, you should not modify or store the window, but clone it if you need to.inherited -
max(
) → Option< T> -
Available on Iter<
Returns the maximum element of an iterator.T> , provided by the IteratorComparableSelf extension -
maxBy(
int f(T, T)) → Option< T> -
Returns the element that gives the maximum value with respect to the specified comparison function.
inherited
-
maxByKey<
U extends Comparable< (U> >U f(T)) → Option< T> -
Returns the element that gives the maximum value from the specified function.
inherited
-
min(
) → Option< T> -
Available on Iter<
Returns the minimum element of an iterator.T> , provided by the IteratorComparableSelf extension -
minBy(
int f(T, T)) → Option< T> -
Returns the element that gives the minimum value with respect to the specified comparison function.
inherited
-
minByKey<
U extends Comparable< (U> >U f(T)) → Option< T> -
Returns the element that gives the minimum value from the specified function.
inherited
-
moveNext(
) → bool -
Advances the iterator to the next element of the iteration.
override
-
ne(
Iterator< U> other) → bool -
Available on Iter<
Determines if the elements of this Iterator are not equal to those of another.T> , provided by the IteratorComparable extension -
next(
) → Option< T> -
If the iterator is empty, returns None. Otherwise, returns the next value wrapped in Some.
inherited
-
nextChunk(
int size) → Result< Arr< T> , Iter<T> > -
Returns the next n elements of the iterator as an Arr,
If there are not enough elements to fill the array then Err is returned containing an iterator over the remaining elements.
inherited
-
nonNulls(
) → Iter< T> -
Available on Iter<
Returns an Iter over the non-null elements of this iterator.T?> , provided by the NullableIterableExtensionOverrides extension -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
nth(
int n) → Option< T> -
Returns the nth element of the iterator.
Like most indexing operations, the count starts from zero, so nth(0) returns the first value, nth(1) the second, and so on.
nth() will return None if n is greater than or equal to the length of the iterator.
inherited
-
partition(
bool f(T)) → (List< T> , List<T> ) -
Consumes an iterator, creating two collections from it.
partition() returns a pair, all of the elements for which it returned true, and all of the elements for which it returned false.
inherited
-
partitionInPlace(
bool f(T)) → int -
Reorders the elements of this iterator in-place according to the given predicate,
such that all those that return true precede all those that return false.
Returns the number of true elements found.
The relative order of partitioned items is not maintained.
inherited
-
peek(
) → Option< T> - Returns the next element of the iterator without consuming it.
-
peekable(
) → Peekable< T> -
Creates an iterator which can use the "peek" to look at the next element of the iterator without consuming it.
inherited
-
position(
bool f(T)) → Option< int> -
Searches for an element in an iterator, returning its index.
inherited
-
reduce(
T combine(T value, T element)) → T -
Reduces a collection to a single value by iteratively combining elements
of the collection using the provided function.
inherited
-
rev(
) → Iter< T> -
Reverses the iterable
inherited
-
rposition(
bool f(T)) → Option< int> -
Searches for an element in an iterator from the right, returning its index.
Recommended to use with a list, as it is more efficient, otherwise use position.
inherited
-
scan<
U extends Object> (U initial, Option< U> f(U, T)) → Iter<U> -
An iterator which, like fold, holds internal state, but unlike fold, produces a new iterator.
On iteration, the closure will be applied to each element of the iterator and the return value from the closure.
The closure can return Some(value) to yield value, or None to end the iteration.
inherited
-
singleOrNull(
) → Never -
Available on Iter<
T> , provided by the IterableExtensionOverrides extension -
singleWhere(
bool test(T element), {T orElse()?}) → T -
The single element that satisfies
test
.inherited -
skip(
int count) → Iter< T> -
Consumes and skips the first
count
elements.inherited -
skipWhile(
bool f(T)) → Iter< T> -
Consumes and skips elements while
f
is true and returns the rest.inherited -
stepBy(
int step) → Iter< T> -
Creates an iterator starting at the same point, but stepping by the given amount at each iteration.
inherited
-
take(
int count) → Iter< T> -
Takes the first
count
elements from the Iter.inherited -
takeWhile(
bool f(T)) → Iter< T> -
TTakes the first count elements from the Iter while
f
is true.inherited -
toArr(
) → Arr< T> -
Available on Iterable<
Creates an Array from an IterableT> , provided by the ArrayOnIterableExtension extension -
toList(
{bool growable = true}) → List< T> -
Creates a List containing the elements of this Iterable.
inherited
-
toResult(
) → FutureResult< List< S> , List<F> > -
Available on Iterable<
Transforms an Iterable of FutureResults into a single result where the ok value is the list of all successes and err value is a list of all failures. The order ofFutureResult< , provided by the IterableFutureResultExtension extensionS, F> >S
andF
is determined by the order in the List. -
toResult(
) → Result< List< S> , List<F> > -
Available on Iterable<
Transforms an Iterable of results into a single result where the ok value is the list of all successes and err value is a list of all failures.Result< , provided by the IterableResultExtension extensionS, F> > -
toResultEager(
) → FutureResult< List< S> , F> -
Available on Iterable<
Transforms an Iterable of FutureResults into a single result where the ok value is the list of all successes. If any error is encountered, the first error is used as the error result. The order ofFutureResult< , provided by the IterableFutureResultExtension extensionS, F> >S
andF
is determined by the order in which futures complete. -
toResultEager(
) → Result< List< S> , F> -
Available on Iterable<
Transforms an Iterable of results into a single result where the ok value is the list of all successes. If any error is encountered, the first error is used as the error result.Result< , provided by the IterableResultExtension extensionS, F> > -
toSet(
) → Set< T> -
Creates a Set containing the same elements as this iterable.
inherited
-
toString(
) → String -
Returns a string representation of (some of) the elements of
this
.inherited -
toVec(
) → Vec< T> -
Available on Iterable<
T> , provided by the VecOnIterableExtension extension -
tryCollect(
) → Result< List< T> , E> -
Available on Iter<
Transforms an iterator into a collection, short circuiting if a Err is encountered.Result< , provided by the IteratorResultExtension extensionT, E> > -
tryFind(
bool f(T)) → Result< Option< T> , E> -
Available on Iter<
Applies function to the elements of iterator and returns the first true result or the first Err element.Result< , provided by the IteratorResultExtension extensionT, E> > -
tryFind<
E extends Object> (Result< bool, E> f(T)) → Result<Option< T> , E> -
Available on Iter<
Applies function to the elements of iterator and returns the first true result or the first error.T> , provided by the IteratorResultFuncExtension extension -
tryFold<
U> (U initial, U f(U, T)) → Result< U, E> -
Available on Iter<
An iterator method that applies a function producing a single value, returns Err is encounted.Result< , provided by the IteratorResultExtension extensionT, E> > -
tryFold<
U, E extends Object> (U initial, Result< U, E> f(U, T)) → Result<U, E> -
Available on Iter<
An iterator method that applies a function as long as it returns successfully, producing a single, final value.T> , provided by the IteratorResultFuncExtension extension -
tryForEach(
void f(T)) → Result< (), E> -
Available on Iter<
An iterator method that applies a function, stopping at the first Err and returning that Err.Result< , provided by the IteratorResultExtension extensionT, E> > -
tryForEach<
E extends Object> (Result< (), E> f(T)) → Result<(), E> -
Available on Iter<
An iterator method that applies a fallible function to each item in the iterator, stopping at the first error and returning that error.T> , provided by the IteratorResultFuncExtension extension -
tryReduce(
T f(T, T)) → Result< Option< T> , E> -
Available on Iter<
Reduces the elements to a single one by repeatedly applying a reducing operation. If a Err is encounted it is returned.Result< , provided by the IteratorResultExtension extensionT, E> > -
tryReduce<
E extends Object> (Result< T, E> f(T, T)) → Result<Option< T> , E> -
Available on Iter<
Reduces the elements to a single one by repeatedly applying a reducing operation. If the closure returns a failure, the failure is propagated back to the caller immediately.T> , provided by the IteratorResultFuncExtension extension -
unzip(
) → (List< T> , List<U> ) -
Available on Iter<
Converts an iterator of pairs into a pair of containers.(T, U)> , provided by the IteratorOnIteratorTUExtension extension -
where(
bool f(T)) → Iter< T> -
Creates an Iter where all the elements satisfy the predicate
f
.inherited -
whereType<
U> () → Iter< U> -
Creates an Iter where all the elements are of Type U.
inherited
-
zip<
U> (Iterator< U> other) → Zip<T, U> -
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited