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 new List()
) 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/wrappers.dart" instead.
- Mixes-in
- ListMixin<E>
- Implemented by
Static Methods
-
listToString(
List list) → String -
Convert a
List
to a string as[each, element, as, string]
.
Constructors
- ListBase()
Properties
- first → E
-
read-only, inherited
- hashCode → int
-
Get a hash code for this object.
read-only, inherited - isEmpty → bool
-
read-only, inherited
- isNotEmpty → bool
-
read-only, inherited
- iterator → Iterator<E>
-
read-only, inherited
- last → E
-
read-only, inherited
- length → int
-
Returns the number of objects in this list.
read / write, inherited - reversed → Iterable<E>
-
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited - single → E
-
read-only, inherited
Operators
-
operator ==(
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
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 ofthis
.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(
Iterable f(E element)) → Iterable -
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(
initialValue, dynamic combine(previousValue, E element)) → dynamic -
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
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 rangestart
inclusive toend
exclusive.inherited -
indexOf(
Object element, [int startIndex = 0]) → int -
Returns the first index of
element
in this list.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 startIndex]) → int -
Returns the last index in the list
a
of the givenelement
, starting the search at indexstartIndex
to 0. Returns -1 ifelement
is not found.inherited -
lastWhere(
bool test(E element), {E orElse()}) → E -
Returns the last element that satisfies the given predicate
test
.inherited -
map(
dynamic f(E element)) → Iterable -
Returns a new lazy
Iterable
with elements that are created by callingf
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 occurence 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 -
Returns the single element that satisfies
test
.inherited -
skip(
int count) → Iterable<E> -
Returns an
Iterable
that provides all but the firstcount
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 objects from
start
inclusive toend
exclusive.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 thisIterable
.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 predicatetest
.inherited