comparison mercurial/branchmap.py @ 42134:f0203c3406e7

branchcache: lazily validate nodes in iteritems() This saves ~0.30 sec on creating a new branch on our internal repo. Differential Revision: https://phab.mercurial-scm.org/D6236
author Pulkit Goyal <pulkit@yandex-team.ru>
date Mon, 15 Apr 2019 19:21:41 +0300
parents 75e8e16ca107
children caebe5e7f4bd
comparison
equal deleted inserted replaced
42133:75e8e16ca107 42134:f0203c3406e7
217 def __contains__(self, key): 217 def __contains__(self, key):
218 self._verifybranch(key) 218 self._verifybranch(key)
219 return key in self._entries 219 return key in self._entries
220 220
221 def iteritems(self): 221 def iteritems(self):
222 self._verifyall() 222 for k, v in self._entries.iteritems():
223 return self._entries.iteritems() 223 self._verifybranch(k)
224 yield k, v
224 225
225 def hasbranch(self, label): 226 def hasbranch(self, label):
226 """ checks whether a branch of this name exists or not """ 227 """ checks whether a branch of this name exists or not """
227 self._verifybranch(label) 228 self._verifybranch(label)
228 return label in self._entries 229 return label in self._entries