ObservableList<T> class

Create a list of T.

The ObservableList tracks the various read-methods (eg: List.first, List.last) and write-methods (eg: List.add, List.insert) making it easier to use it inside reactions.

final list = ObservableList<int>.of([1]);

autorun((_) {
  print(list.first);
}) // prints 1

list[0] = 100; // autorun prints 100
Implemented types

Constructors

ObservableList({ReactiveContext context })
ObservableList.of(Iterable<T> elements, { ReactiveContext context })

Properties

first ↔ T
Returns the first element. [...]
read / write, inherited-getter
iterator → Iterator<T>
Returns a new Iterator that allows iterating the elements of this Iterable. [...]
read-only
length ↔ int
Returns the number of objects in this list. [...]
read / write
name → String
read-only
single → T
Checks that this iterable has only one element, and returns that element. [...]
read-only
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
last ↔ T
Returns the last element.
read / write, inherited
reversed → Iterable<T>
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

Methods

add(T element) → void
Adds value to the end of this list, extending the length by one. [...]
addAll(Iterable<T> iterable) → void
Appends all objects of iterable to the end of this list. [...]
asMap() → Map<int, T>
Returns an unmodifiable Map view of this. [...]
cast<R>() → List<R>
Returns a view of this list as a list of R instances. [...]
clear() → void
Removes all objects from this list; the length of the list becomes zero. [...]
fillRange(int start, int end, [ T fill ]) → void
Sets the objects in the range start inclusive to end exclusive to the given fillValue. [...]
insert(int index, T element) → void
Inserts the object at position index in this list. [...]
insertAll(int index, Iterable<T> iterable) → void
Inserts all objects of iterable at position index in this list. [...]
lastIndexWhere(bool test(T element), [ int start ]) → int
Returns the last index in the list that satisfies the provided test. [...]
lastWhere(bool test(T element), { T orElse() }) → T
Returns the last element that satisfies the given predicate test. [...]
observe(Listener<ListChange<T>> listener, { bool fireImmediately }) Dispose
override
remove(Object element) → bool
Removes the first occurrence of value from this list. [...]
removeAt(int index) → T
Removes the object at position index from this list. [...]
removeLast() → T
Pops and returns the last object in this list. [...]
removeRange(int start, int end) → void
Removes the objects in the range start inclusive to end exclusive. [...]
removeWhere(bool test(T element)) → void
Removes all objects from this list that satisfy test. [...]
replaceRange(int start, int end, Iterable<T> newContents) → void
Removes the objects in the range start inclusive to end exclusive and inserts the contents of replacement in its place. [...]
retainWhere(bool test(T element)) → void
Removes all objects from this list that fail to satisfy test. [...]
setAll(int index, Iterable<T> iterable) → void
Overwrites objects of this with the objects of iterable, starting at position index in this list. [...]
setRange(int start, int end, Iterable<T> iterable, [ int skipCount = 0 ]) → void
Copies the objects of iterable, skipping skipCount objects first, into the range start, inclusive, to end, exclusive, of the list. [...]
shuffle([Random random ]) → void
Shuffles the elements of this list randomly.
sort([int compare(T a, T b) ]) → void
Sorts this list according to the order specified by the compare function. [...]
sublist(int start, [ int end ]) → List<T>
Returns a new list containing the elements between start and end. [...]
toList({bool growable: true }) → List<T>
Creates a List containing the elements of this Iterable. [...]
any(bool test(E element)) → bool
Checks whether any element of this iterable satisfies test.
inherited
contains(Object element) → bool
Returns true if the collection contains an element equal to element.
inherited
elementAt(int index) → T
Returns the indexth 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
firstWhere(bool test(E element), { T orElse() }) → T
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<T> other) → Iterable<T>
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<T>
Returns an Iterable that iterates over the objects in the range start inclusive to end 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
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
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 this Iterable in iteration order.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
reduce(T combine(E previousValue, E element)) → T
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
inherited
singleWhere(bool test(E element), { T orElse() }) → T
Returns the single element that satisfies test.
inherited
skip(int count) → Iterable<T>
Returns an Iterable that provides all but the first count elements.
inherited
skipWhile(bool test(E element)) → Iterable<T>
Returns an Iterable that skips leading elements while test is satisfied.
inherited
take(int count) → Iterable<T>
Returns a lazy iterable of the count first elements of this iterable.
inherited
takeWhile(bool test(E element)) → Iterable<T>
Returns a lazy iterable of the leading elements satisfying test.
inherited
toSet() → Set<T>
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<T>
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<T> other) → List<T>
Returns the concatenation of this list and other. [...]
operator [](int index) → T
Returns the object at the given index in the list or throws a RangeError if index is out of bounds.
operator []=(int index, T value) → void
Sets the value at the given index in the list to value or throws a RangeError if index is out of bounds.
operator ==(dynamic other) → bool
The equality operator.
inherited