Mercurial > public > mercurial-scm > hg
comparison mercurial/changelog.py @ 43445:c093fb81404f
repoview: move changelog.__iter__() override to filteredchangelog
Differential Revision: https://phab.mercurial-scm.org/D7239
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 05 Nov 2019 14:12:10 -0800 |
parents | c470e699cd00 |
children | 5ade47284dda |
comparison
equal
deleted
inserted
replaced
43444:c470e699cd00 | 43445:c093fb81404f |
---|---|
402 self._delayed = False | 402 self._delayed = False |
403 self._delaybuf = None | 403 self._delaybuf = None |
404 self._divert = False | 404 self._divert = False |
405 self.filteredrevs = frozenset() | 405 self.filteredrevs = frozenset() |
406 self._copiesstorage = opener.options.get(b'copies-storage') | 406 self._copiesstorage = opener.options.get(b'copies-storage') |
407 | |
408 def __iter__(self): | |
409 """filtered version of revlog.__iter__""" | |
410 if len(self.filteredrevs) == 0: | |
411 return revlog.revlog.__iter__(self) | |
412 | |
413 def filterediter(): | |
414 for i in pycompat.xrange(len(self)): | |
415 if i not in self.filteredrevs: | |
416 yield i | |
417 | |
418 return filterediter() | |
419 | 407 |
420 def revs(self, start=0, stop=None): | 408 def revs(self, start=0, stop=None): |
421 """filtered version of revlog.revs""" | 409 """filtered version of revlog.revs""" |
422 for i in super(changelog, self).revs(start, stop): | 410 for i in super(changelog, self).revs(start, stop): |
423 if i not in self.filteredrevs: | 411 if i not in self.filteredrevs: |