docs: def iter_predecessors(self, graph, dest, branch, turn, tick, *, forward=None):
          """Iterate over predecessors to a given destination node at a given time."""
          if self.db._no_kc:
              yield from self._adds_dels_sucpred(self.predecessors[graph, dest], branch, turn, tick)[0]
              return
          if forward is None:
              forward = self.db._forward
          yield from self._get_origcache(graph, dest, branch, turn, tick, forward=forward)