MapEmitter<K, V> class

A ChangeEmitter implementation of a map. Modifying a MapEmitter won't automatically emit a change. To emit a change after it has been modified, call emit.

Inheritance
Mixed in types

Constructors

MapEmitter(Map<K, V> map, {bool emitDetailedChanges = false})

Properties

changes Stream<MapChange<K, V>>
The stream of Changes to notify your UI or other state elements that they should update.
no setterinherited
emitDetailedChanges bool
Whether to emit changes that include detailed information about the specific change. Defaults to false which will emit the same cached change object to minimize garbage collection.
final
entries Iterable<MapEntry<K, V>>
The map entries of this.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
isDisposed bool
Whether this has been disposed.
no setterinherited
isEmpty bool
Whether there is no key/value pair in the map.
no setterinherited
isNotEmpty bool
Whether there is at least one key/value pair in the map.
no setterinherited
keys Iterable<K>
The keys of this.
no setteroverride
length int
The number of key/value pairs in the map.
no setterinherited
parent ChangeEmitter<Change>?
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
values Iterable<V>
The values of this.
no setterinherited

Methods

addAll(Map<K, V> other) → void
Adds all key/value pairs of other to this map.
inherited
addChangeToStream(MapChange<K, V> change) → void
Used by subclasses to broadcast Changes.
inherited
addEntries(Iterable<MapEntry<K, V>> newEntries) → void
Adds all key/value pairs of newEntries to this map.
inherited
cast<RK, RV>() Map<RK, RV>
Provides a view of this map as having RK keys and RV instances, if necessary.
inherited
clear() → void
Removes all pairs from the map.
override
containsKey(Object? key) bool
Whether this map contains the given key.
inherited
containsValue(Object? value) bool
Whether this map contains the given value.
inherited
didRegisterParent() → void
Will be called after parent is set and the ancestor tree is available.
inherited
dispose() → void
Disposes resources and closes the stream controller.
inherited
emit({bool quiet = false}) → dynamic
Emits a change if the map has been modified since the last emit (or since it was initialized).
findAncestorOfExactType<T extends ChangeEmitter<Change>>() → T?
inherited
forEach(void action(K key, V value)) → void
Applies action to each key/value pair of the map.
inherited
map<K2, V2>(MapEntry<K2, V2> transform(K key, V value)) Map<K2, V2>
Returns a new map where all entries of this map are transformed by the given convert function.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
putIfAbsent(K key, V ifAbsent()) → V
Look up the value of key, or add a new entry if it isn't there.
inherited
remove(Object? key) → V?
Removes key and its associated value, if present, from the map.
override
removeWhere(bool test(K key, V value)) → void
Removes all entries of this map that satisfy the given test.
inherited
toString() String
A string representation of this object.
inherited
update(K key, V update(V value), {V ifAbsent()?}) → V
Updates the value for the provided key.
inherited
updateAll(V update(K key, V value)) → void
Updates all values.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited
operator [](Object? key) → V?
The value for the given key, or null if key is not in the map.
override
operator []=(K key, V value) → void
Associates the key with the given value.
override