watch<T> method

Stream<T?> watch<T>(
  1. String key, {
  2. bool emitCurrent = true,
})

The value of key now (when emitCurrent) and after every change.

Implementation

Stream<T?> watch<T>(String key, {bool emitCurrent = true}) async* {
  if (emitCurrent) yield get<T>(key);
  yield* _changes.stream.where((UStorageChange c) => c.key == key).map((UStorageChange c) => c.value == null ? null : _cast<T>(key, c.value!));
}