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

Constructors

Peekable(Iterator<T> _iterator)

Properties

current → T
The current element.
no setteroverride
first → T
The first element.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
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 this Iterable.
no setterinherited
last → T
The last element.
no setterinherited
length int
The number of elements in this Iterable.
no setterinherited
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

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
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
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
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 indexth element.
inherited
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
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
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
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
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
join([String separator = ""]) String
Converts each element to a String and concatenates the strings.
inherited
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
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 of 1, 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
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
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
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
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
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
toList({bool growable = true}) List<T>
Creates a List containing the elements of this Iterable.
inherited
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
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