dispatchingValue method

void dispatchingValue(
  1. ObserverWrapper<T>? observerWrapper
)

Implementation

void dispatchingValue(ObserverWrapper<T>? observerWrapper) {
  if (valueDispatching) {
    dispatchInvalidated = true;
    return;
  }
  valueDispatching = true;
  do {
    dispatchInvalidated = false;
    if (observerWrapper != null) {
      considerNotify(observerWrapper);
      observerWrapper = null;
    } else {
      for (var observer in observers.values) {
        considerNotify(observer);
        if (dispatchInvalidated) {
          break;
        }
      }
    }
  } while (dispatchInvalidated);
  valueDispatching = false;
}