# HG changeset patch # User Pierre-Yves David # Date 2014-10-04 03:48:28 # Node ID 61ecabeeadb3a9998efb0a55ab38a8ea7a59b048 # Parent 43f664bf2e1ed59feda683e48d5ceca79f324129 generatorset: move iteration code into _iterator _iterator handles the generator iteration. The `__iter__` method will need changes to handle ordering-related information. diff --git a/mercurial/revset.py b/mercurial/revset.py --- a/mercurial/revset.py +++ b/mercurial/revset.py @@ -2626,10 +2626,10 @@ class generatorset(abstractsmartset): self._finished = False if iterasc is not None: if iterasc: - self.fastasc = self.__iter__ + self.fastasc = self._iterator self.__contains__ = self._asccontains else: - self.fastdesc = self.__iter__ + self.fastdesc = self._iterator self.__contains__ = self._desccontains def __nonzero__(self): @@ -2680,6 +2680,9 @@ class generatorset(abstractsmartset): return False def __iter__(self): + return self._iterator() + + def _iterator(self): if self._finished: return iter(self._genlist)