listen method

ProviderSubscription<Listened> listen({
  1. void mayHaveChanged(
    1. ProviderSubscription<Listened> sub
    )?,
  2. void didChange(
    1. ProviderSubscription<Listened> sub
    )?,
})

Listen to this provider.

See also:

Implementation

ProviderSubscription<Listened> listen({
  void Function(ProviderSubscription<Listened> sub)? mayHaveChanged,
  void Function(ProviderSubscription<Listened> sub)? didChange,
}) {
  late ProviderSubscription<Listened> sub;
  final entry = _Listener<Listened>(
    mayHaveChanged: mayHaveChanged == null ? null : () => mayHaveChanged(sub),
    didChange: didChange == null ? null : () => didChange(sub),
    element: this,
  );
  _listeners.add(entry);

  return sub = ProviderSubscription._(entry);
}