dispose method

void dispose()

Dispose all resources and mark as disposed.

Implementation

void dispose() {
  if (_isDisposed) {
    return;
  }

  _isDisposed = true;

  // Cancel debounce timer
  _debounceTimer?.cancel();
  _debounceTimer = null;

  // Cancel all subscriptions
  for (final subscription in _subscriptions) {
    subscription.cancel();
  }
  _subscriptions.clear();

  // Execute all dispose callbacks
  for (final callback in _disposeCallbacks) {
    MinixErrorHandler.safeExecute(
      callback,
      context: 'Dispose callback',
    );
  }
  _disposeCallbacks.clear();
}