diff mercurial/context.py @ 3203:14792adabf80

Merge with upstream
author Thomas Arendsen Hein <thomas@intevation.de>
date Sat, 30 Sep 2006 09:46:03 +0200
parents 5c93dd0ae413 05c588e1803d
children 9e8dd6114a4e
line wrap: on
line diff
--- a/mercurial/context.py	Sat Sep 30 09:39:44 2006 +0200
+++ b/mercurial/context.py	Sat Sep 30 09:46:03 2006 +0200
@@ -32,9 +32,18 @@
         self._node = self._repo.lookup(changeid)
         self._rev = self._repo.changelog.rev(self._node)
 
+    def __str__(self):
+        return short(self.node())
+
     def __repr__(self):
         return "<changectx %s>" % short(self.node())
 
+    def __eq__(self, other):
+        return self._rev == other._rev
+
+    def __nonzero__(self):
+        return self._rev != -1
+
     def changeset(self):
         try:
             return self._changeset
@@ -127,9 +136,18 @@
         else:
             raise AttributeError, name
 
+    def __nonzero__(self):
+        return self._filerev != nullid
+
+    def __str__(self):
+        return "%s@%s" % (self.path(), short(self.node()))
+
     def __repr__(self):
         return "<filectx %s@%s>" % (self.path(), short(self.node()))
 
+    def __eq__(self, other):
+        return self._path == other._path and self._changeid == other._changeid
+
     def filerev(self): return self._filerev
     def filenode(self): return self._filenode
     def filelog(self): return self._filelog