watch<T> method
Implementation
void watch<T>(String name, Function(T? value) callback) {
if (!_watchers.containsKey(name)) {
_watchers[name] = [];
}
void adaptedCallback(dynamic value) {
try {
T? typedValue;
if (value == null) {
typedValue = null;
} else if (value is T) {
typedValue = value;
} else {
typedValue = value as T?;
}
callback(typedValue);
} catch (e) {
callback(null);
}
}
_watchers[name]?.add(adaptedCallback);
}