| 1731 | import dask.array as module |
| 1732 | |
| 1733 | def handle_nonmatching_names(func, args, kwargs): |
| 1734 | if func not in _HANDLED_FUNCTIONS: |
| 1735 | warnings.warn( |
| 1736 | f"The `{func.__module__}.{func.__name__}` function " |
| 1737 | "is not implemented by Dask array. " |
| 1738 | "You may want to use the da.map_blocks function " |
| 1739 | "or something similar to silence this warning. " |
| 1740 | "Your code may stop working in a future release.", |
| 1741 | FutureWarning, |
| 1742 | ) |
| 1743 | # Need to convert to array object (e.g. numpy.ndarray or |
| 1744 | # cupy.ndarray) as needed, so we can call the NumPy function |
| 1745 | # again and it gets the chance to dispatch to the right |
| 1746 | # implementation. |
| 1747 | args, kwargs = compute(args, kwargs) |
| 1748 | return func(*args, **kwargs) |
| 1749 | |
| 1750 | return _HANDLED_FUNCTIONS[func](*args, **kwargs) |
| 1751 | |
| 1752 | # First, verify that all types are handled by Dask. Otherwise, return NotImplemented. |
| 1753 | if not all( |