changeset 20728:1c8b62c0a47e

revset: added filter method to _addset This method is intended to duck-type baseset, so we will still have _addset as a private class but we will be able return it without wrapping it into an orderedlazyset or a lazyset.
author Lucas Moscovicz <lmoscovicz@fb.com>
date Thu, 13 Mar 2014 19:12:36 -0700
parents 1e59f760d850
children caa69cb223b0
files mercurial/revset.py
diffstat 1 files changed, 5 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/revset.py	Fri Mar 14 09:18:14 2014 -0700
+++ b/mercurial/revset.py	Thu Mar 13 19:12:36 2014 -0700
@@ -2392,6 +2392,11 @@
             self._genlist = baseset(self._iterator())
         return self._genlist
 
+    def filter(self, condition):
+        if self._ascending is not None:
+            return orderedlazyset(self, condition, ascending=self._ascending)
+        return lazyset(self, condition)
+
     def _iterator(self):
         """Iterate over both collections without repeating elements