Mercurial > public > mercurial-scm > hg-stable
diff mercurial/revlog.py @ 2890:5df3e5cf16bc
Move cmp bits from filelog to revlog
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Tue, 15 Aug 2006 14:18:13 -0500 |
parents | 345bac2bc4ec |
children | baa3873eb387 |
line wrap: on
line diff
--- a/mercurial/revlog.py Tue Aug 15 14:06:50 2006 -0500 +++ b/mercurial/revlog.py Tue Aug 15 14:18:13 2006 -0500 @@ -766,6 +766,19 @@ raise RevlogError(_("No match found")) + def cmp(self, node, text): + """compare text with a given file revision""" + p1, p2 = self.parents(node) + return hash(text, p1, p2) != node + + def makenode(self, node, text): + """calculate a file nodeid for text, descended or possibly + unchanged from node""" + + if self.cmp(node, text): + return hash(text, node, nullid) + return node + def diff(self, a, b): """return a delta between two revisions""" return mdiff.textdiff(a, b)