dispose method

  1. @override
  2. @mustCallSuper
void dispose()

Discards any resources used by the object.

This method should only be called by the object's owner.

Implementation

@override
@mustCallSuper
void dispose() {
  if (_$isDisposed) {
    assert(false, 'A $runtimeType was already disposed.');
    return;
  }
  _$isDisposed = true;
  _$subscribers = 0;
  runZonedGuarded<void>(
    () => Controller.observer?.onDispose(this),
    (error, stackTrace) {/* ignore */}, // coverage:ignore-line
  );
  ControllerRegistry().remove<Controller>();
  super.dispose();
}