purgeDeps function

void purgeDeps(
  1. ReactiveNode sub
)

Unlinks every dependency of sub after its re-tracking cursor (depsTail) — i.e. the dependencies not re-confirmed by the latest run.

Desliga toda dependência de sub após seu cursor de re-rastreamento (depsTail) — isto é, as dependências não reconfirmadas pela última execução.

Implementation

void purgeDeps(ReactiveNode sub) {
  final ReactiveLink? tail = sub.depsTail;
  ReactiveLink? dep = tail != null ? tail.nextDep : sub.deps;
  while (dep != null) {
    dep = ObserverEngine.instance.unlink(dep, sub);
  }
}