-import mmap
+
+from __future__ import absolute_import
+import glob, mmap, os, struct
+
from bup import _helpers
-from bup.helpers import *
+from bup.compat import range
+from bup.helpers import log, mmap_read
+
MIDX_VERSION = 4
def _init_failed(self):
self.bits = 0
self.entries = 1
- self.fanout = buffer('\0\0\0\0')
- self.shatable = buffer('\0'*20)
+ self.fanout = b'\0\0\0\0'
+ self.shatable = b'\0' * 20
self.idxnames = []
def _fanget(self, i):
return None
def __iter__(self):
- for i in xrange(self._fanget(self.entries-1)):
- yield buffer(self.shatable, i*20, 20)
+ count = self._fanget(self.entries-1)
+ for ofs in range(0, count * 20, 20):
+ yield self.shatable[ofs : ofs + 20]
def __len__(self):
return int(self._fanget(self.entries-1))
+def clear_midxes(dir=None):
+ for midx in glob.glob(os.path.join(dir, '*.midx')):
+ os.unlink(midx)