# 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