comparison mercurial/revset.py @ 20721:d642f176df52

revset: changed _iterator() in addset to use the generated list when available Now when all the elements have been generated, the iterator will just use the generated list instead of going through all the elements again.
author Lucas Moscovicz <lmoscovicz@fb.com>
date Thu, 13 Mar 2014 14:51:04 -0700
parents 5f8400efca0b
children 6894223ebc38
comparison
equal deleted inserted replaced
20720:5f8400efca0b 20721:d642f176df52
2351 self._iter = _generatorset(gen()) 2351 self._iter = _generatorset(gen())
2352 2352
2353 return self._iter 2353 return self._iter
2354 2354
2355 def __iter__(self): 2355 def __iter__(self):
2356 for r in self._iterator(): 2356 if self._genlist:
2357 yield r 2357 return iter(self._genlist)
2358 return iter(self._iterator())
2358 2359
2359 def __contains__(self, x): 2360 def __contains__(self, x):
2360 return x in self._r1 or x in self._r2 2361 return x in self._r1 or x in self._r2
2361 2362
2362 def set(self): 2363 def set(self):