comparison mercurial/changelog.py @ 43440:ec7ba79bf3db

revlog: move tiprev() from changelog up to revlog This makes the changelog override simpler and it seems more consistent. Differential Revision: https://phab.mercurial-scm.org/D7250
author Martin von Zweigbergk <martinvonz@google.com>
date Tue, 05 Nov 2019 14:42:08 -0800
parents 30570a056fa8
children 7bc8e49a7c35
comparison
equal deleted inserted replaced
43439:0a0bad6d7ac0 43440:ec7ba79bf3db
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 407
408 def tiprev(self): 408 def tiprev(self):
409 """filtered version of revlog.tiprev"""
409 for i in pycompat.xrange(len(self) - 1, -2, -1): 410 for i in pycompat.xrange(len(self) - 1, -2, -1):
410 if i not in self.filteredrevs: 411 if i not in self.filteredrevs:
411 return i 412 return i
412
413 def tip(self):
414 """filtered version of revlog.tip"""
415 return self.node(self.tiprev())
416 413
417 def __contains__(self, rev): 414 def __contains__(self, rev):
418 """filtered version of revlog.__contains__""" 415 """filtered version of revlog.__contains__"""
419 return 0 <= rev < len(self) and rev not in self.filteredrevs 416 return 0 <= rev < len(self) and rev not in self.filteredrevs
420 417