ReactiveNotifier<T> class
A reactive state management solution that supports:
- Singleton instances with key-based identity
- Related states management
- Circular reference detection
- Notification overflow detection
- Detailed debug logging
- Inheritance
-
- Object
- ChangeNotifier
- ReactiveNotifier
Constructors
- ReactiveNotifier.new(T create(), {Key? key, bool autoDispose = false})
-
Creates or returns existing instance of ReactiveNotifier
factory
Properties
- autoDispose → bool
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasListeners → bool
-
Whether any listeners are currently registered.
no setterinherited
- keyNotifier → Key
-
final
- notifier → T
-
no setterinherited
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be called when the object changes.
inherited
-
cleanCurrentNotifier(
) → bool - Attempts to remove the current instance from the global registry if it's not being used.
-
dispose(
) → void - Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener will throw after the object is disposed).
-
from<
R> ([Key? key]) → R - Gets a related state by type
-
getStateByKey<
R> (Key key) → R? -
listen(
void value(T data)) → T -
Starts listening for changes in the ViewModel.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notifyListeners(
) → void -
Call all the registered listeners.
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that are
notified when the object changes.
inherited
-
stopListening(
) → void -
Stops listening for changes in the ViewModel.
inherited
-
toString(
) → String - A string representation of this object.
-
transformState(
T data(T data)) → void -
transformStateSilently(
T data(T data)) → void -
updateSilently(
T newState) → void - updateSilently Updates the value silently without notifying listeners.
-
updateState(
T newState) → void - updateState Updates the state and notifies listeners if the value has changed.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
-
getInstances
→ List<
ReactiveNotifier> -
no setter
- instanceCount → int
-
no setter
Static Methods
-
cleanup(
) → void - Utility methods
-
cleanupByType<
T> () → int - Removes all instances of a specific type from the global registry.
-
cleanupInstance(
Key key) → bool - Removes a specific instance from the global registry by its key.
-
getInstanceByKey<
T> (Key key) → ReactiveNotifier< T> -
instanceCountByType<
S> () → int