autoDispose<D> method
D
autoDispose<D>(
- D resource
Registers resource (RxInterface, ListNotifier, Computed,
StreamSubscription, Timer, or Disposer callback) to be
automatically closed/disposed when onClose runs.
Implementation
D autoDispose<D>(D resource) {
if (resource is RxInterface) {
_syncDisposers.add(resource.close);
} else if (resource is ListNotifier) {
_syncDisposers.add(resource.dispose);
} else if (resource is StreamSubscription) {
_workers.add(resource);
} else if (resource is Timer) {
_timers.add(resource);
} else if (resource is Disposer) {
_syncDisposers.add(resource);
} else {
throw ArgumentError.value(
resource,
'resource',
'Expected RxInterface, ListNotifier, StreamSubscription, Timer, or Disposer.',
);
}
return resource;
}