Mercurial > hg
diff mercurial/url.py @ 39482:77a2f6d805f2
lazyancestors: reuse __iter__ implementation in __contains__
There was a comment in the code that said "Trying to do both __iter__
and __contains__ using the same visit heap and seen set is complex
enough that it slows down both. Keep them separate.". However, it
seems easy and efficient to make __contains__ keep an iterator across
calls.
I couldn't measure any slowdown from `hg bundle --all` (which seem to
call lazyancestors.__contains__ frequently).
Differential Revision: https://phab.mercurial-scm.org/D4508
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Fri, 07 Sep 2018 23:36:09 -0700 |
parents | 126998dcfb08 |
children | f80db6adabbe |