mirror of
https://github.com/borgbackup/borg.git
synced 2025-03-15 00:21:56 +00:00
some small Cython code improvements, thanks to Stefan Behnel
This commit is contained in:
parent
45e3c3d04e
commit
5b441f7801
1 changed files with 6 additions and 3 deletions
|
@ -24,15 +24,18 @@ cdef extern from "_hashindex.c":
|
||||||
int _le32toh(int v)
|
int _le32toh(int v)
|
||||||
|
|
||||||
|
|
||||||
_NoDefault = object()
|
cdef _NoDefault = object()
|
||||||
|
|
||||||
|
cimport cython
|
||||||
|
|
||||||
|
@cython.internal
|
||||||
cdef class IndexBase:
|
cdef class IndexBase:
|
||||||
cdef HashIndex *index
|
cdef HashIndex *index
|
||||||
key_size = 32
|
key_size = 32
|
||||||
|
|
||||||
def __cinit__(self, capacity=0, path=None):
|
def __cinit__(self, capacity=0, path=None):
|
||||||
if path:
|
if path:
|
||||||
self.index = hashindex_read(<bytes>os.fsencode(path))
|
self.index = hashindex_read(os.fsencode(path))
|
||||||
if not self.index:
|
if not self.index:
|
||||||
raise Exception('hashindex_read failed')
|
raise Exception('hashindex_read failed')
|
||||||
else:
|
else:
|
||||||
|
@ -49,7 +52,7 @@ cdef class IndexBase:
|
||||||
return cls(path=path)
|
return cls(path=path)
|
||||||
|
|
||||||
def write(self, path):
|
def write(self, path):
|
||||||
if not hashindex_write(self.index, <bytes>os.fsencode(path)):
|
if not hashindex_write(self.index, os.fsencode(path)):
|
||||||
raise Exception('hashindex_write failed')
|
raise Exception('hashindex_write failed')
|
||||||
|
|
||||||
def clear(self):
|
def clear(self):
|
||||||
|
|
Loading…
Add table
Reference in a new issue