ObservableSet<T> class Null safety

ObservableSet provides a reactive set that notifies changes when a member is added or removed.

final set = ObservableSet.of([1, 2, 3]);

const disposer = autorun((_){
  print(set);
});

set.add(4); // prints {1, 2, 3, 4}

Implemented types
Mixed in types
Available Extensions

Constructors

ObservableSet({ReactiveContext? context, String? name})
ObservableSet.of(Iterable<T> other, {ReactiveContext? context, String? name})
ObservableSet.splayTreeSetFrom(Iterable<T> other, {int compare(T, T)?, bool isValidKey(dynamic)?, ReactiveContext? context, String? name})

Properties

first → T
Returns the first element.
read-onlyinherited
hashCode int
The hash code for this object.
read-onlyinherited
isEmpty bool
Whether this collection has no elements.
read-onlyinherited
isNotEmpty bool
Whether this collection has at least one element.
read-onlyinherited
iterator Iterator<T>
An iterator that iterates over the elements of this set.
read-onlyoverride
last → T
Returns the last element.
read-onlyinherited
length int
Returns the number of elements in the iterable.
read-onlyoverride
name String
read-only
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
single → T
Checks that this iterable has only one element, and returns that element.
read-onlyinherited

Methods

add(T value) bool
Adds value to the set.
override
addAll(Iterable<T> elements) → void
Adds all elements to this set.
inherited
any(bool test(T element)) bool
Checks whether any element of this iterable satisfies test.
inherited
cast<R>() Set<R>
Provides a view of this set as a set of R instances.
override
clear() → void
Removes all elements from the set.
override
contains(Object? element) bool
Whether value is in the set.
override
containsAll(Iterable<Object?> other) bool
Whether this set contains all the elements of other.
inherited
difference(Set<Object?> other) Set<T>
Creates a new set with the elements of this that are not in other.
inherited
elementAt(int index) → T
Returns the indexth element.
inherited
every(bool f(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
firstWhere(bool test(T value), {T orElse()?}) → T
Returns 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>
Returns the lazy concatenation of this iterable and other.
inherited
forEach(void f(T element)) → void
Invokes action on each element of this iterable in iteration order.
inherited
intersection(Set<Object?> other) Set<T>
Creates a new set which is the intersection between this set and other.
inherited
join([String separator = ""]) String
Converts each element to a String and concatenates the strings.
inherited
lastWhere(bool test(T value), {T orElse()?}) → T
Returns the last element that satisfies the given predicate test.
inherited
lookup(Object? element) → T?
If an object equal to object is in the set, return it.
override
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 non-existent method or property is accessed.
inherited
observe(SetChangeListener<T> listener, {bool fireImmediately = false}) Dispose
Attaches a listener to changes happening in the ObservableSet. You have the option to be notified immediately (fireImmediately) or wait for until the first change.
override
reduce(T combine(T value, T element)) → T
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
inherited
remove(Object? value) bool
Removes value from the set.
override
removeAll(Iterable<Object?> elements) → void
Removes each element of elements from this set.
inherited
removeWhere(bool test(T element)) → void
Removes all elements of this set that satisfy test.
inherited
retainAll(Iterable<Object?> elements) → void
Removes all elements of this set that are not elements in elements.
inherited
retainWhere(bool test(T element)) → void
Removes all elements of this set that fail to satisfy test.
inherited
singleWhere(bool test(T value), {T orElse()?}) → T
Returns the single element that satisfies test.
inherited
skip(int n) Iterable<T>
Returns an Iterable that provides all but the first count elements.
inherited
skipWhile(bool test(T value)) Iterable<T>
Returns an Iterable that skips leading elements while test is satisfied.
inherited
take(int n) Iterable<T>
Returns a lazy iterable of the count first elements of this iterable.
inherited
takeWhile(bool test(T value)) Iterable<T>
Returns 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 with the same elements and behavior as this Set.
override
toString() String
A string representation of this object.
inherited
union(Set<T> other) Set<T>
Creates a new set which contains all the elements of this set and other.
inherited
where(bool f(T 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 ==(Object other) bool
The equality operator.
inherited