MCPcopy
hub / github.com/pydata/xarray / DummyChunkManager

Class DummyChunkManager

xarray/tests/test_parallelcompat.py:59–128  ·  view source on GitHub ↗

Mock-up of ChunkManager class for DummyChunkedArray

Source from the content-addressed store, hash-verified

57
58
59class DummyChunkManager(ChunkManagerEntrypoint):
60 """Mock-up of ChunkManager class for DummyChunkedArray"""
61
62 def __init__(self):
63 self.array_cls = DummyChunkedArray
64
65 def is_chunked_array(self, data: Any) -> bool:
66 return isinstance(data, DummyChunkedArray)
67
68 def chunks(self, data: DummyChunkedArray) -> T_NormalizedChunks:
69 return data.chunks
70
71 def normalize_chunks(
72 self,
73 chunks: T_Chunks | T_NormalizedChunks,
74 shape: tuple[int, ...] | None = None,
75 limit: int | None = None,
76 dtype: np.dtype | None = None,
77 previous_chunks: T_NormalizedChunks | None = None,
78 ) -> T_NormalizedChunks:
79 from dask.array.core import normalize_chunks
80
81 return normalize_chunks(chunks, shape, limit, dtype, previous_chunks)
82
83 def from_array(
84 self, data: T_DuckArray | np.typing.ArrayLike, chunks: _Chunks, **kwargs
85 ) -> DummyChunkedArray:
86 from dask import array as da
87
88 return da.from_array(data, chunks, **kwargs)
89
90 def rechunk(self, data: DummyChunkedArray, chunks, **kwargs) -> DummyChunkedArray:
91 return data.rechunk(chunks, **kwargs)
92
93 def compute(self, *data: DummyChunkedArray, **kwargs) -> tuple[np.ndarray, ...]: # type: ignore[override]
94 from dask.array import compute
95
96 return compute(*data, **kwargs)
97
98 def apply_gufunc(
99 self,
100 func,
101 signature,
102 *args,
103 axes=None,
104 axis=None,
105 keepdims=False,
106 output_dtypes=None,
107 output_sizes=None,
108 vectorize=None,
109 allow_rechunk=False,
110 meta=None,
111 **kwargs,
112 ):
113 from dask.array.gufunc import apply_gufunc
114
115 return apply_gufunc(
116 func,

Callers 1

Calls

no outgoing calls

Tested by 1

Used in the wild real call sites across dependent graphs

searching dependent graphs…