addDispose<T> method
void
addDispose<T>(
- void disposeFunc(
- T
Defines dispose strategy for type T
.
(It calls for every resolved dependency of type T
when container's dispose was invoked
Implementation
void addDispose<T>(void Function(T) disposeFunc) {
if (_typesToDispose.containsKey(T)) {
throw StateError('Dispose for dependency of type `$T` '
'is already defined in the container');
}
// To satisfy strict compiler we need to cast Function(T) to Function(Object)
_typesToDispose[T] = (Object o) => disposeFunc(o as T);
}