# HG changeset patch # User Alexis S. L. Carvalho # Date 1150826250 10800 # Node ID 568e58eed096e832cc1a2f02b70b80a4ea9cac99 # Parent 2785aeb51be43492601aaf7883c1e442f5123d02 Add revlog.parentrevs function. This allows one to walk the revision graph using only revision numbers, which can be faster than using revision hashes, especially for RevlogNG, where the parents of a revision are stored as revision numbers. diff -r 2785aeb51be4 -r 568e58eed096 mercurial/revlog.py --- a/mercurial/revlog.py Fri Jun 23 12:52:42 2006 -0700 +++ b/mercurial/revlog.py Tue Jun 20 14:57:30 2006 -0300 @@ -477,6 +477,13 @@ if self.version == REVLOGV0: return d return [ self.node(x) for x in d ] + def parentrevs(self, rev): + if rev == -1: + return (-1, -1) + d = self.index[rev][-3:-1] + if self.version == REVLOGV0: + return [ self.rev(x) for x in d ] + return d def start(self, rev): if rev < 0: return -1