revset: add a `__nonzero__` to baseset
authorPierre-Yves David <pierre-yves.david@fb.com>
Wed, 01 Oct 2014 15:03:16 -0500
changeset 22691 d8a08b68f754
parent 22690 d7ab5684711f
child 22692 78c916f24dd9
revset: add a `__nonzero__` to baseset We are about to add a base class for `baseset` with an abstract `__nonzero__` method. So we need this method to be explicitly defined to avoid issues. The built-in list object apparently does not have a `__nonzero__` and relies on `__len__` for this purpose?
mercurial/revset.py
--- a/mercurial/revset.py	Wed Oct 01 15:50:54 2014 -0500
+++ b/mercurial/revset.py	Wed Oct 01 15:03:16 2014 -0500
@@ -2238,6 +2238,9 @@
     def __contains__(self):
         return self.set().__contains__
 
+    def __nonzero__(self):
+        return bool(len(self))
+
     def __sub__(self, other):
         """Returns a new object with the substraction of the two collections.