notifySignal<T> function
Invalidates a signal so that subscribers re-evaluate without changing the stored value.
Parameters:
signal: Signal to invalidate
Example:
final cacheAwareSignal = CustomSignalNode<int>(0);
notifySignal(cacheAwareSignal);
Implementation
@pragma("vm:prefer-inline")
@pragma("wasm:prefer-inline")
@pragma("dart2js:prefer-inline")
void notifySignal<T>(SignalReactiveNode<T> signal) {
signal.flags = ReactiveFlags.mutable | ReactiveFlags.dirty;
var 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);
}