addListener method

  1. @override
ProviderSubscription<State> addListener(
  1. Node node,
  2. void listener(
    1. State? previous,
    2. State next
    ), {
  3. required void onError(
    1. Object error,
    2. StackTrace stackTrace
    )?,
  4. required void onDependencyMayHaveChanged()?,
  5. required bool fireImmediately,
})
override

Starts listening to this transformer

Implementation

@override
ProviderSubscription<State> addListener(
  Node node,
  void Function(State? previous, State next) listener, {
  required void Function(Object error, StackTrace stackTrace)? onError,
  required void Function()? onDependencyMayHaveChanged,
  required bool fireImmediately,
}) {
  onError ??= Zone.current.handleUncaughtError;

  final element = node.readProviderElement(this);

  element.flush();
  if (fireImmediately) {
    handleFireImmediately(
      element.getState()!,
      listener: listener,
      onError: onError,
    );
  }

  element._onListen();

  return node._listenElement(
    element,
    listener: listener,
    onError: onError,
  );
}