Mercurial > public > mercurial-scm > hg
comparison mercurial/revlog.py @ 7363:9d28ff207030
revlog: speed up parents()
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 12 Nov 2008 15:58:46 -0600 |
parents | 6db4a2ccef3a |
children | ec3aafa84d44 |
comparison
equal
deleted
inserted
replaced
7362:6db4a2ccef3a | 7363:9d28ff207030 |
---|---|
501 def node(self, rev): | 501 def node(self, rev): |
502 return self.index[rev][7] | 502 return self.index[rev][7] |
503 def linkrev(self, rev): | 503 def linkrev(self, rev): |
504 return self.index[rev][4] | 504 return self.index[rev][4] |
505 def parents(self, node): | 505 def parents(self, node): |
506 d = self.index[self.rev(node)][5:7] | 506 i = self.index |
507 return (self.node(d[0]), self.node(d[1])) | 507 d = i[self.rev(node)] |
508 return i[d[5]][7], i[d[6]][7] # map revisions to nodes inline | |
508 def parentrevs(self, rev): | 509 def parentrevs(self, rev): |
509 return self.index[rev][5:7] | 510 return self.index[rev][5:7] |
510 def start(self, rev): | 511 def start(self, rev): |
511 return int(self.index[rev][0] >> 16) | 512 return int(self.index[rev][0] >> 16) |
512 def end(self, rev): | 513 def end(self, rev): |