# HG changeset patch
# User Paul Moore
# Date 1207341677 -7200
# Node ID fb502719c75c048af6e81289dc8a70edb8fc43aa
# Parent af2edc9c5bb99e2e03feb8fa0d7ce99c5c2987dc
python 2.6 compatibility: add __hash__ to classes that have __eq__
diff -r af2edc9c5bb9 -r fb502719c75c mercurial/commands.py
--- a/mercurial/commands.py Fri Apr 04 22:18:38 2008 +0200
+++ b/mercurial/commands.py Fri Apr 04 22:41:17 2008 +0200
@@ -1047,6 +1047,9 @@
self.colstart = colstart
self.colend = colend
+ def __hash__(self):
+ return hash((self.linenum, self.line))
+
def __eq__(self, other):
return self.line == other.line
diff -r af2edc9c5bb9 -r fb502719c75c mercurial/context.py
--- a/mercurial/context.py Fri Apr 04 22:18:38 2008 +0200
+++ b/mercurial/context.py Fri Apr 04 22:41:17 2008 +0200
@@ -34,6 +34,12 @@
def __repr__(self):
return "" % str(self)
+ def __hash__(self):
+ try:
+ return hash(self._rev)
+ except AttributeError:
+ return id(self)
+
def __eq__(self, other):
try:
return self._rev == other._rev
@@ -210,6 +216,12 @@
def __repr__(self):
return "" % str(self)
+ def __hash__(self):
+ try:
+ return hash((self._path, self._fileid))
+ except AttributeError:
+ return id(self)
+
def __eq__(self, other):
try:
return (self._path == other._path