comparison mercurial/revset.py @ 20720:5f8400efca0b

revset: added cached generated list to addset This way when all the values have been generated the list can be sorted without having to generate them all again.
author Lucas Moscovicz <lmoscovicz@fb.com>
date Tue, 11 Mar 2014 16:59:42 -0700
parents cce8fbedc82a
children d642f176df52
comparison
equal deleted inserted replaced
20719:cce8fbedc82a 20720:5f8400efca0b
2329 def __init__(self, revs1, revs2, ascending=None): 2329 def __init__(self, revs1, revs2, ascending=None):
2330 self._r1 = revs1 2330 self._r1 = revs1
2331 self._r2 = revs2 2331 self._r2 = revs2
2332 self._iter = None 2332 self._iter = None
2333 self._ascending = ascending 2333 self._ascending = ascending
2334 self._genlist = None
2335
2336 @util.propertycache
2337 def _list(self):
2338 if not self._genlist:
2339 self._genlist = baseset(self._iterator())
2340 return self._genlist
2334 2341
2335 def _iterator(self): 2342 def _iterator(self):
2336 if not self._iter: 2343 if not self._iter:
2337 def gen(): 2344 def gen():
2338 for r in self._r1: 2345 for r in self._r1: