ListBase<E> class Null safety
Abstract implementation of a list.
ListBase
can be used as a base class for implementing the List
interface.
All operations are defined in terms of length
, operator[]
,
operator[]=
and length=
, which need to be implemented.
NOTICE: Forwarding just these four operations to a normal growable List
(as created by []
) will give very bad performance for add
and
addAll
operations of ListBase
. These operations are implemented by
increasing the length of the list by one for each add
operation, and
repeatedly increasing the length of a growable list is not efficient.
To avoid this, either override 'add' and 'addAll' to also forward directly
to the growable list, or, preferably, use DelegatingList
from
"package:collection/collection.dart" instead.
- Mixed in types
- ListMixin<
E>
- ListMixin<
- Implementers
Constructors
- ListBase()
Properties
- first ↔ E
-
Returns the first element. [...]
read / write, inherited
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- isEmpty → bool
-
Returns
true
if there are no elements in this collection. [...]read-only, inherited - isNotEmpty → bool
-
Returns true if there is at least one element in this collection. [...]
read-only, inherited
-
iterator
→ Iterator<
E> -
Returns a new
Iterator
that allows iterating the elements of thisIterable
. [...]read-only, inherited - last ↔ E
-
Returns the last element. [...]
read / write, inherited
- length ↔ int
-
The number of objects in this list. [...]
read / write, inherited
-
reversed
→ Iterable<
E> -
Returns an Iterable of the objects in this list in reverse order.
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
- single → E
-
Checks that this iterable has only one element, and returns that element. [...]
read-only, inherited
Methods
-
add(
E element ) → void -
Adds
value
to the end of this list, extending the length by one. [...]inherited -
addAll(
Iterable< E> iterable) → void -
Appends all objects of
iterable
to the end of this list. [...]inherited -
any(
bool test(E element ) ) → bool -
Checks whether any element of this iterable satisfies
test
. [...]inherited -
asMap(
) → Map< int, E> -
Returns an unmodifiable Map view of
this
. [...]inherited -
cast<
R> () → List< R> -
Returns a view of this list as a list of
R
instances. [...]inherited -
clear(
) → void -
Removes all objects from this list;
the length of the list becomes zero. [...]
inherited
-
contains(
Object? element ) → bool -
Returns true if the collection contains an element equal to
element
. [...]inherited -
elementAt(
int index ) → E -
Returns the
index
th element. [...]inherited -
every(
bool test(E element ) ) → bool -
Checks whether every element of this iterable satisfies
test
. [...]inherited -
expand<
T> (Iterable< T> f(E element) ) → Iterable< T> -
Expands each element of this Iterable into zero or more elements. [...]
inherited
-
fillRange(
int start, int end, [E fill] ) → void -
Sets the objects in the range
start
inclusive toend
exclusive to the givenfillValue
. [...]inherited -
firstWhere(
bool test(E element ), {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 concatentation of this iterable and
other
. [...]inherited -
forEach(
void action(E element ) ) → void -
Applies the function
f
to each element of this collection in iteration order.inherited -
getRange(
int start, int end ) → Iterable< E> -
Returns an Iterable that iterates over the objects in the range
start
inclusive toend
exclusive. [...]inherited -
indexOf(
Object? element, [int start = 0] ) → int -
Returns the first index of
element
in this list. [...]inherited -
indexWhere(
bool test(E element ), [int start = 0] ) → int -
Returns the first index in the list that satisfies the provided
test
. [...]inherited -
insert(
int index, E element ) → void -
Inserts the object at position
index
in this list. [...]inherited -
insertAll(
int index, Iterable< E> iterable) → void -
Inserts all objects of
iterable
at positionindex
in this list. [...]inherited -
join(
[String separator = ""] ) → String -
Converts each element to a String and concatenates the strings. [...]
inherited
-
lastIndexOf(
Object? element, [int? start] ) → int -
Returns the last index of
element
in this list. [...]inherited -
lastIndexWhere(
bool test(E element ), [int? start] ) → int -
Returns the last index in the list that satisfies the provided
test
. [...]inherited -
lastWhere(
bool test(E element ), {E orElse()} ) → E -
Returns the last element that satisfies the given predicate
test
. [...]inherited -
map<
T> (T f(E element ) ) → Iterable< T> -
Returns a new lazy Iterable with elements that are created by
calling
f
on each element of thisIterable
in iteration order. [...]inherited -
noSuchMethod(
Invocation invocation ) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
reduce(
E combine(E previousValue, E element ) ) → E -
Reduces a collection to a single value by iteratively combining elements
of the collection using the provided function. [...]
inherited
-
remove(
Object? element ) → bool -
Removes the first occurrence of
value
from this list. [...]inherited -
removeAt(
int index ) → E -
Removes the object at position
index
from this list. [...]inherited -
removeLast(
) → E -
Pops and returns the last object in this list. [...]
inherited
-
removeRange(
int start, int end ) → void -
Removes the objects in the range
start
inclusive toend
exclusive. [...]inherited -
removeWhere(
bool test(E element ) ) → void -
Removes all objects from this list that satisfy
test
. [...]inherited -
replaceRange(
int start, int end, Iterable< E> newContents) → void -
Removes the objects in the range
start
inclusive toend
exclusive and inserts the contents ofreplacement
in its place. [...]inherited -
retainWhere(
bool test(E element ) ) → void -
Removes all objects from this list that fail to satisfy
test
. [...]inherited -
setAll(
int index, Iterable< E> iterable) → void -
Overwrites objects of
this
with the objects ofiterable
, starting at positionindex
in this list. [...]inherited -
setRange(
int start, int end, Iterable< E> iterable,[int skipCount = 0] ) → void -
Copies the objects of
iterable
, skippingskipCount
objects first, into the rangestart
, inclusive, toend
, exclusive, of the list. [...]inherited -
shuffle(
[Random? random] ) → void -
Shuffles the elements of this list randomly.
inherited
-
singleWhere(
bool test(E element ), {E orElse()} ) → E -
Returns the single element that satisfies
test
. [...]inherited -
skip(
int count ) → Iterable< E> -
Returns an Iterable that provides all but the first
count
elements. [...]inherited -
skipWhile(
bool test(E element ) ) → Iterable< E> -
Returns an
Iterable
that skips leading elements whiletest
is satisfied. [...]inherited -
sort(
[int compare(E a, E b )] ) → void -
Sorts this list according to the order specified by the
compare
function. [...]inherited -
sublist(
int start, [int? end] ) → List< E> -
Returns a new list containing the elements between
start
andend
. [...]inherited -
take(
int count ) → Iterable< E> -
Returns a lazy iterable of the
count
first elements of this iterable. [...]inherited -
takeWhile(
bool test(E element ) ) → 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 -
Returns a string representation of this object.
inherited
-
where(
bool test(E element ) ) → 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 +(
List< E> other) → List< E> -
Returns the concatenation of this list and
other
. [...]inherited -
operator ==(
Object other ) → bool -
The equality operator. [...]
inherited
-
operator [](
int index ) → E -
Returns the object at the given
index
in the list or throws a RangeError ifindex
is out of bounds.inherited -
operator []=(
int index, E value ) → void -
Sets the value at the given
index
in the list tovalue
or throws a RangeError ifindex
is out of bounds.inherited