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

Constructors

ReactiveNotifier.new(T create(), {List<ReactiveNotifier>? related, 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