notifySignal<T> function

void notifySignal<T>(
  1. ReadonlySignal<T> signal
)

Force update a signal without changing its value

Implementation

@pragma('vm:prefer-inline')
@pragma('wasm:prefer-inline')
@pragma('dart2js:prefer-inline')
void notifySignal<T>(ReadonlySignal<T> signal) {
  signal.flags = (ReactiveFlags.mutable | ReactiveFlags.dirty);

  Link? subs = signal.subs;

  while (subs != null) {
    subs.sub.flags |= (ReactiveFlags.pending);
    shallowPropagate(subs);
    subs = subs.nextSub;
  }

  if (signal.subs != null && batchDepth == 0) {
    flushEffects();
  }

  JoltDebug.notify(signal);
}