(data: Any, **kwargs: dict[str, Any])
| 128 | |
| 129 | |
| 130 | def to_duck_array(data: Any, **kwargs: dict[str, Any]) -> duckarray[_ShapeType, _DType]: |
| 131 | from xarray.core.indexing import ( |
| 132 | ExplicitlyIndexed, |
| 133 | ImplicitToExplicitIndexingAdapter, |
| 134 | ) |
| 135 | from xarray.namedarray.parallelcompat import get_chunked_array_type |
| 136 | |
| 137 | if is_chunked_array(data): |
| 138 | chunkmanager = get_chunked_array_type(data) |
| 139 | loaded_data, *_ = chunkmanager.compute(data, **kwargs) # type: ignore[var-annotated] |
| 140 | return loaded_data |
| 141 | |
| 142 | if isinstance(data, ExplicitlyIndexed | ImplicitToExplicitIndexingAdapter): |
| 143 | return data.get_duck_array() # type: ignore[no-untyped-call, no-any-return] |
| 144 | elif is_duck_array(data): |
| 145 | return data |
| 146 | else: |
| 147 | return np.asarray(data) # type: ignore[return-value] |
| 148 | |
| 149 | |
| 150 | async def async_to_duck_array( |
no test coverage detected
searching dependent graphs…