shallowPropagate function
void
shallowPropagate(
- Link theLink
Marks direct subscribers reachable from theLink dirty.
This does not recurse into deeper subscriber chains. It is typically used after a value has already been recomputed.
Implementation
void shallowPropagate(Link theLink) {
Link? link = theLink;
do {
final sub = link!.sub;
final flags = sub.flags;
if (flags & (ReactiveFlags.pending | ReactiveFlags.dirty) ==
(ReactiveFlags.pending)) {
sub.flags = flags | (ReactiveFlags.dirty);
if (flags & (ReactiveFlags.watching | ReactiveFlags.recursedCheck) ==
ReactiveFlags.watching) {
(sub as EffectNode).notifyEffect();
}
}
} while ((link = link.nextSub) != null);
}