Skip to content

Commit 46edb3c

Browse files
committed
refactoring to reduce code duplication; fix resize persistence
1 parent 93d7896 commit 46edb3c

File tree

4 files changed

+383
-223
lines changed

4 files changed

+383
-223
lines changed

zarr/ext.pxd

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -53,42 +53,41 @@ cdef class BaseArray:
5353
cdef int _clevel
5454
cdef int _shuffle
5555
cdef object _fill_value
56+
cdef object _cdata
5657
# abstract methods
5758
cdef BaseChunk create_chunk(self, tuple cidx)
5859
cdef BaseChunk get_chunk(self, tuple cidx)
5960

6061

6162
cdef class Array(BaseArray):
62-
cdef ndarray _cdata
63+
pass
6364

6465

6566
cdef class SynchronizedArray(Array):
6667
pass
6768

6869

69-
cdef class PersistentArray(BaseArray):
70-
cdef ndarray _cdata
71-
cdef object _mode
72-
cdef object _path
70+
cdef class LazyArray(BaseArray):
71+
pass
7372

7473

75-
cdef class SynchronizedPersistentArray(PersistentArray):
76-
pass
74+
cdef class SynchronizedLazyArray(LazyArray):
75+
cdef object _lock
7776

7877

79-
cdef class LazyArray(BaseArray):
80-
cdef dict _cdata
78+
cdef class PersistentArray(BaseArray):
79+
cdef object _mode
80+
cdef object _path
81+
cdef object get_chunk_path(self, tuple cidx)
8182

8283

83-
cdef class SynchronizedLazyArray(LazyArray):
84+
cdef class SynchronizedPersistentArray(PersistentArray):
8485
pass
8586

8687

87-
cdef class LazyPersistentArray(BaseArray):
88-
# TODO
88+
cdef class LazyPersistentArray(PersistentArray):
8989
pass
9090

9191

92-
cdef class SynchronizedLazyPersistentArray(BaseArray):
93-
# TODO
94-
pass
92+
cdef class SynchronizedLazyPersistentArray(LazyPersistentArray):
93+
cdef object _lock

0 commit comments

Comments
 (0)