dispose method

void dispose()

Idempotent — a second dispose is a no-op (used in-body and via addTearDown).

Implementation

void dispose() {
  if (_disposed) return;
  _disposed = true;
  _timer?.cancel();
  _registry.removeListener(_onRegistryChanged);
  _builtHost?.dispose();
  _stateNotifier.dispose();
}