MCPcopy Create free account
hub / github.com/dask/dask / register_xarray

Function register_xarray

dask/sizeof.py:262–303  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

260
261@sizeof.register_lazy("xarray")
262def register_xarray():
263 import sys
264
265 import xarray as xr
266
267 XARRAY_VERSION = Version(xr.__version__)
268 XARRAY_GE_2024_02 = XARRAY_VERSION >= Version("2024.02.0")
269
270 @sizeof.register(xr.core.utils.Frozen)
271 def xarray_sizeof_frozen(obj):
272 return sys.getsizeof(obj) + sizeof(obj.mapping)
273
274 @sizeof.register(xr.DataArray)
275 @sizeof.register(xr.Variable)
276 def xarray_sizeof_da(obj):
277 return sys.getsizeof(obj) + sizeof(obj.data)
278
279 @sizeof.register(xr.Dataset)
280 def xarray_sizeof_ds(obj):
281 return sys.getsizeof(obj) + sizeof(obj.variables)
282
283 if XARRAY_GE_2024_02:
284 xarray_sizeof_da = sizeof.register(xr.NamedArray)(xarray_sizeof_da)
285
286 @sizeof.register(xr.core.indexes.Indexes)
287 def xarray_sizeof_indexes(obj):
288 return (
289 sys.getsizeof(obj)
290 + sizeof(obj._index_type)
291 + sizeof(obj._indexes)
292 + sizeof(obj._variables)
293 + sizeof(obj._dims)
294 )
295
296 @sizeof.register(xr.core.indexes.PandasIndex)
297 def xarray_sizeof_pd_index(obj):
298 return (
299 sys.getsizeof(obj)
300 + sizeof(obj.index)
301 + sizeof(obj.dim)
302 + sizeof(obj.coord_dtype)
303 )
304
305
306def _register_entry_point_plugins():

Callers

nothing calls this directly

Calls 1

registerMethod · 0.45

Tested by

no test coverage detected