disposeResource method

void disposeResource(
  1. BuildContext context,
  2. T resource
)

Disposes the resource.

If a dispose function was not provided when creating this ResourceProvider, the resource is expected to implement a void dispose() method.

Implementation

void disposeResource(BuildContext context, T resource) {
  if (_dispose != null) {
    _dispose(context, resource);
  } else if (resource is ChangeNotifier) {
    resource.dispose();
  } else {
    (resource as dynamic).dispose(); // ignore: avoid_dynamic_calls
    throw UnimplementedError('Provide a dispose function or override this method in a subclass.');
  }
}