mercurial/revset.py
changeset 20724 e9a64b3f2925
parent 20723 fb9852c46a42
child 20725 cf628b50afbb
--- a/mercurial/revset.py	Thu Mar 13 18:57:30 2014 -0700
+++ b/mercurial/revset.py	Tue Mar 11 17:03:43 2014 -0700
@@ -2409,6 +2409,19 @@
     def set(self):
         return self
 
+    def sort(self, reverse=False):
+        """Sort the added set
+
+        For this we use the cached list with all the generated values and if we
+        know they are ascending or descending we can sort them in a smart way.
+        """
+        if self._ascending is None:
+            self._list.sort(reverse=reverse)
+            self._ascending = not reverse
+        else:
+            if bool(self._ascending) == bool(reverse):
+                self.reverse()
+
     def reverse(self):
         self._list.reverse()
         if self._ascending is not None: