comparison mercurial/revlog.py @ 115:39b438eeb25a

Make lazyindex load slightly faster
author mpm@selenic.com
date Fri, 20 May 2005 17:34:04 -0800
parents aea6562add6c
children e484cd5ec282
comparison
equal deleted inserted replaced
114:82fb6d09f911 115:39b438eeb25a
75 class lazyindex: 75 class lazyindex:
76 def __init__(self, parser): 76 def __init__(self, parser):
77 self.p = parser 77 self.p = parser
78 def __len__(self): 78 def __len__(self):
79 return len(self.p.index) 79 return len(self.p.index)
80 def load(self, pos):
81 self.p.load(pos)
82 return self.p.index[pos]
80 def __getitem__(self, pos): 83 def __getitem__(self, pos):
81 i = self.p.index[pos] 84 return self.p.index[pos] or self.load(pos)
82 if not i:
83 self.p.load(pos)
84 return self.p.index[pos]
85 return i
86 def append(self, e): 85 def append(self, e):
87 self.p.index.append(e) 86 self.p.index.append(e)
88 87
89 class lazymap: 88 class lazymap:
90 def __init__(self, parser): 89 def __init__(self, parser):