EqualityDefinedIterable<E> class

An Iterable that has equality defined on it by its elements.

An instance of an equality-defined iterable inherits all the methods and properties of an Iterable, but overrides the property hashCode and the operator operator ==.

By default, two equality-defined iterables are considered equal if they have the same length, and if every element in the two iterables are equal, in order, when comparing by the equality operator operator ==. This is DefaultEquality.

It is also possible to provide a different type of Equality for the elements. A pre-defined alternate is the IdentityEquality, which defines two objects as equal if they are the same instance of an object.

See also:

Inheritance
Available Extensions

Constructors

EqualityDefinedIterable(Iterable<E> iterable, [Equality _elementEquality = const DefaultEquality()])
Creates an equality-defined iterable.
const

Properties

first → E
Returns the first element.
read-onlyinherited
hashCode int
The hash code for this object.
read-onlyoverride
isEmpty bool
Whether this collection has no elements.
read-onlyinherited
isNotEmpty bool
Whether this collection has at least one element.
read-onlyinherited
iterator Iterator<E>
Returns a new Iterator that allows iterating the elements of this Iterable.
read-onlyinherited
last → E
Returns the last element.
read-onlyinherited
length int
Returns the number of elements in this.
read-onlyinherited
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
single → E
Checks that this iterable has only one element, and returns that element.
read-onlyinherited

Methods

any(bool test(E)) bool
Checks whether any element of this iterable satisfies test.
inherited
cast<T>() Iterable<T>
Provides a view of this iterable as an iterable of R instances.
inherited
contains(Object element) bool
Whether the collection contains an element equal to element.
inherited
elementAt(int index) → E
Returns the indexth element.
inherited
every(bool test(E)) bool
Checks whether every element of this iterable satisfies test.
inherited
expand<T>(Iterable<T> f(E)) Iterable<T>
Expands each element of this Iterable into zero or more elements.
inherited
firstWhere(bool test(E), {E orElse()}) → E
Returns the first element that satisfies the given predicate test.
inherited
fold<T>(T initialValue, T combine(T previousValue, E element)) → T
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
inherited
followedBy(Iterable<E> other) Iterable<E>
Returns the lazy concatenation of this iterable and other.
inherited
forEach(void f(E)) → void
Invokes action on each element of this iterable in iteration order.
inherited
join([String separator = '']) String
Converts each element to a String and concatenates the strings.
inherited
lastWhere(bool test(E), {E orElse()}) → E
Returns the last element that satisfies the given predicate test.
inherited
map<T>(T f(E)) Iterable<T>
The current elements of this iterable modified by toElement.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
reduce(E combine(E value, E element)) → E
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
inherited
retype<T>() Iterable<T>
@Deprecated("Use cast instead")inherited
singleWhere(bool test(E), {E orElse()}) → E
Returns the single element that satisfies test.
inherited
skip(int n) Iterable<E>
Returns an Iterable that provides all but the first count elements.
inherited
skipWhile(bool test(E)) Iterable<E>
Returns an Iterable that skips leading elements while test is satisfied.
inherited
take(int n) Iterable<E>
Returns a lazy iterable of the count first elements of this iterable.
inherited
takeWhile(bool test(E)) Iterable<E>
Returns a lazy iterable of the leading elements satisfying test.
inherited
toList({bool growable = true}) List<E>
Creates a List containing the elements of this Iterable.
inherited
toSet() Set<E>
Creates a Set containing the same elements as this iterable.
inherited
toString() String
A string representation of this object.
inherited
where(bool test(E)) Iterable<E>
Returns a new lazy Iterable with all elements that satisfy the predicate test.
inherited
whereType<T>() Iterable<T>
Returns a new lazy Iterable with all elements that have type T.
inherited

Operators

operator ==(Object other) bool
The equality operator.
override