ListChangeNotifier<T> class
An implementation of ChangeNotifier that allows implementers to interact with this provider as if it were a Map and be notified when any changes to the map have been made
Like ChangeNotifier, this is optimized for small numbers of listeners. It is O(N) for adding and removing listeners.
K
is the type of the Key to be used by this map. It is usually a String,
but can be any subclass of Object. It must implement operator==
and
hashCode
T
is the type of the Value to be used by this map. It can be any subclass
of Object and has no special requirements.
- Inheritance
-
- Object
- ChangeNotifier
- CollectionChangeNotifier
- ListChangeNotifier
- Mixed-in types
-
- ListMixin<
T>
- ListMixin<
- Available extensions
Constructors
-
ListChangeNotifier.new([List<
T> ? backingList])
Properties
- first ↔ T
-
The first element.
getter/setter pairinherited
- firstOrNull → T?
-
Available on Iterable<
The first element of this iterator, orT> , provided by the IterableExtensions extensionnull
if the iterable is empty.no setter - hashCode → int
-
The hash code for this object.
no setterinherited
- hasListeners → bool
-
Whether any listeners are currently registered.
no setterinherited
-
indexed
→ Iterable<
(int, T)> -
Available on Iterable<
Pairs of elements of the indices and elements of this iterable.T> , provided by the IterableExtensions extensionno setter - 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 thisIterable
.no setterinherited - last ↔ T
-
The last element.
getter/setter pairinherited
- lastOrNull → T?
-
Available on Iterable<
The last element of this iterable, orT> , provided by the IterableExtensions extensionnull
if the iterable is empty.no setter - length ↔ int
-
The number of objects in this list.
getter/setter pairoverride
-
nonNulls
→ Iterable<
T> -
Available on Iterable<
The non-T?> , provided by the NullableIterableExtensions extensionnull
elements of this iterable.no setter -
reversed
→ Iterable<
T> -
An Iterable of the objects in this list in reverse order.
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
- singleOrNull → T?
-
Available on Iterable<
The single element of this iterator, orT> , provided by the IterableExtensions extensionnull
.no setter -
toJS
→ JSArray<
T> -
Available on List<
Converts this List to a JSArray by either casting, unwrapping, or cloning the List.T> , provided by the ListToJSArray extensionno setter -
toJSProxyOrRef
→ JSArray<
T> -
Available on List<
Converts this List to a JSArray by either casting, unwrapping, or proxying the List.T> , provided by the ListToJSArray extensionno setter -
wait
→ Future<
List< T> > -
Available on Iterable<
Waits for futures in parallel.Future< , provided by the FutureIterable extensionT> >no setter
Methods
-
add(
T element) → void -
Adds
element
to the end of this list, extending the length by one. Listeners are notified after the element is addedoverride -
addAll(
Iterable< T> iterable) → void -
Appends all objects of
iterable
to the end of the list. Listeners are notified after all objects have been added.override -
addListener(
VoidCallback listener) → void -
Register a closure to be called when the object changes.
inherited
-
any(
bool test(T element)) → bool -
Checks whether any element of this iterable satisfies
test
.inherited -
asMap(
) → Map< int, T> -
An unmodifiable Map view of this list.
inherited
-
asNameMap(
) → Map< String, T> -
Available on Iterable<
Creates a map from the names of enum values to the values.T> , provided by the EnumByName extension -
byName(
String name) → T -
Available on Iterable<
Finds the enum value in this list with nameT> , provided by the EnumByName extensionname
. -
cast<
R> () → List< R> -
Returns a view of this list as a list of
R
instances.inherited -
clear(
) → void -
Clear all objects from the list.
Listeners are notified after the list is cleared.
override
-
contains(
Object? element) → bool -
Whether the collection contains an element equal to
element
.inherited -
dispose(
) → void -
Discards the internal resources used by the object.
After this is called, the object is not in a usable state and should be discarded.
override
-
elementAt(
int index) → T -
Returns the
index
th element.inherited -
elementAtOrNull(
int index) → T? -
Available on Iterable<
The element at positionT> , provided by the IterableExtensions extensionindex
of this iterable, ornull
. -
every(
bool test(T element)) → bool -
Checks whether every element of this iterable satisfies
test
.inherited -
expand<
T> (Iterable< T> f(T element)) → Iterable<T> -
Expands each element of this Iterable into zero or more elements.
inherited
-
fillRange(
int start, int end, [T? fill]) → void -
Sets the objects in the range
start
inclusive toend
exclusive to the givenfill
Listeners are notified after all objects are updated.override -
firstWhere(
bool test(T element), {T orElse()?}) → T -
The first element that satisfies the given predicate
test
.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) → Iterable<T> -
Creates the lazy concatenation of this iterable and
other
.inherited -
forEach(
void action(T element)) → void -
Invokes
action
on each element of this iterable in iteration order.inherited -
getRange(
int start, int end) → Iterable< T> -
Creates an Iterable that iterates over a range of elements.
inherited
-
indexOf(
Object? element, [int start = 0]) → int -
The first index of
element
in this list.inherited -
indexWhere(
bool test(T element), [int start = 0]) → int -
The first index in the list that satisfies the provided
test
.inherited -
insert(
int index, T element) → void -
Insert
element
at the positionindex
in this list. Listeners are notified after all objects have been repositioned.override -
insertAll(
int index, Iterable< T> iterable) → void -
Inserts all objects of
iterable
at positionindex
in this list. Listeners are notified after all objects have been inserted.override -
join(
[String separator = ""]) → String -
Converts each element to a String and concatenates the strings.
inherited
-
lastIndexOf(
Object? element, [int? start]) → int -
The last index of
element
in this list.inherited -
lastIndexWhere(
bool test(T element), [int? start]) → int -
The last index in the list that satisfies the provided
test
.inherited -
lastWhere(
bool test(T element), {T orElse()?}) → T -
The last element that satisfies the given predicate
test
.inherited -
map<
T> (T f(T element)) → Iterable< T> -
The current elements of this iterable modified by
toElement
.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notifyListeners(
) → void -
Notify all the listeners, respecting our paused state falg
inherited
-
pauseNotifications<
T> (ChangeHandler< T> handler, [bool notifyAfter = false]) → T -
Pause notifications until after a synchronous handler has completed.
If
notifyAfter
istrue
, then listeners will automatically be notified after the callback completes. Otherwise, you must notify the listeners;inherited -
pauseNotificationsAsync<
T> (AsyncChangeHandler< T> handler, [bool notifyAfter = false]) → Future<T> -
Pause notifications until after an asynchronous handler has completed.
If
notifyAfter
istrue
, then listeners will automatically be notified after the callback completes. Otherwise, you must notify the listeners;inherited -
reduce(
T combine(T previousValue, T element)) → T -
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.override -
removeAt(
int index) → T -
Removes the object at position
index
from the list. Listeners are notified after all objects have been repositioned.override -
removeLast(
) → T -
Removes and returns the last object in this list.
override
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that are
notified when the object changes.
inherited
-
removeRange(
int start, int end) → void -
Removes the objects in the range
start
inclusive toend
exclusive. Listeners are notified after all objects are removed.override -
removeWhere(
bool test(T element)) → void -
Removes all objects from this list that satisfy
test
. Listeners are notified after all objects have been removed.override -
replaceRange(
int start, int end, Iterable< T> newContents) → void -
Removes the objects in the range
start
inclusive toend
exclusive and inserts the contents ofnewContents
in its place. Listeners are notified after all the objects have been replaced.override -
retainWhere(
bool test(T element)) → void -
Removes all objects from the list that fail to satisfy
test
. Listeners are notified after all objects have been removed.override -
setAll(
int index, Iterable< T> iterable) → void -
Overwrites objects of
this
with the objects ofiterable
start at positionsindex
in this list. Listeners are notified after all objects have been set.override -
setRange(
int start, int end, Iterable< T> iterable, [int skipCount = 0]) → void -
Copies the objects of
iterable
, skippingskipCount
object first, into the rangestart
inclusive toend
exclusive of the list. Listeners are notified after all the values have been set.override -
shuffle(
[Random? random]) → void -
Shuffles the elements of this list randomly.
Listeners are notified after shuffling is completed.
override
-
singleWhere(
bool test(T element), {T orElse()?}) → T -
The single element that satisfies
test
.inherited -
skip(
int count) → Iterable< T> -
Creates an Iterable that provides all but the first
count
elements.inherited -
skipWhile(
bool test(T element)) → Iterable< T> -
Creates an
Iterable
that skips leading elements whiletest
is satisfied.inherited -
sort(
[int compare(T a, T b)?]) → void -
Sorts this list according to the order specified by the
compare
function. Listeners are notified after sorting is completed.override -
sublist(
int start, [int? end]) → List< T> -
Returns a new list containing the elements between
start
andend
.inherited -
take(
int count) → Iterable< T> -
Creates a lazy iterable of the
count
first elements of this iterable.inherited -
takeWhile(
bool test(T element)) → Iterable< T> -
Creates a lazy iterable of the leading elements satisfying
test
.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 -
A string representation of this object.
inherited
-
where(
bool test(T element)) → Iterable< T> -
Creates a new lazy Iterable with all elements that satisfy the
predicate
test
.inherited -
whereType<
T> () → Iterable< T> -
Creates 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
.inherited -
operator ==(
Object other) → bool -
The equality operator.
inherited
-
operator [](
int index) → T -
Returns the object at the given
index
in the list or throws a RangeError ifindex
is out of bounds.override -
operator []=(
int index, T value) → void -
Sets the value at the given
index
in the list tovalue
or throws a RangeError ifindex
is out of bounds.override