comparison mercurial/bundlerepo.py @ 6750:fb42030d79d6

add __len__ and __iter__ methods to repo and revlog
author Matt Mackall <mpm@selenic.com>
date Thu, 26 Jun 2008 14:35:50 -0500
parents 602f7c1ab954
children 63b5f4c73c98
comparison
equal deleted inserted replaced
6749:51b0e799352f 6750:fb42030d79d6
32 self.basemap = {} 32 self.basemap = {}
33 def chunkpositer(): 33 def chunkpositer():
34 for chunk in changegroup.chunkiter(bundlefile): 34 for chunk in changegroup.chunkiter(bundlefile):
35 pos = bundlefile.tell() 35 pos = bundlefile.tell()
36 yield chunk, pos - len(chunk) 36 yield chunk, pos - len(chunk)
37 n = self.count() 37 n = len(self)
38 prev = None 38 prev = None
39 for chunk, start in chunkpositer(): 39 for chunk, start in chunkpositer():
40 size = len(chunk) 40 size = len(chunk)
41 if size < 80: 41 if size < 80:
42 raise util.Abort("invalid changegroup") 42 raise util.Abort("invalid changegroup")