|
10 | 10 | import numpy.typing as npt |
11 | 11 | from typing_extensions import deprecated |
12 | 12 |
|
| 13 | +import zarr.api.asynchronous as async_api |
13 | 14 | from zarr.abc.metadata import Metadata |
14 | 15 | from zarr.abc.store import set_or_delete |
15 | 16 | from zarr.core.array import Array, AsyncArray |
@@ -704,29 +705,41 @@ async def arrays(self) -> AsyncGenerator[AsyncArray, None]: |
704 | 705 | async def tree(self, expand: bool = False, level: int | None = None) -> Any: |
705 | 706 | raise NotImplementedError |
706 | 707 |
|
707 | | - async def empty(self, **kwargs: Any) -> AsyncArray: |
708 | | - raise NotImplementedError |
| 708 | + async def empty(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> AsyncArray: |
| 709 | + return await async_api.empty(shape=shape, store=self.store_path, path=name, **kwargs) |
709 | 710 |
|
710 | | - async def zeros(self, **kwargs: Any) -> AsyncArray: |
711 | | - raise NotImplementedError |
| 711 | + async def zeros(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> AsyncArray: |
| 712 | + return await async_api.zeros(shape=shape, store=self.store_path, path=name, **kwargs) |
712 | 713 |
|
713 | | - async def ones(self, **kwargs: Any) -> AsyncArray: |
714 | | - raise NotImplementedError |
| 714 | + async def ones(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> AsyncArray: |
| 715 | + return await async_api.ones(shape=shape, store=self.store_path, path=name, **kwargs) |
715 | 716 |
|
716 | | - async def full(self, **kwargs: Any) -> AsyncArray: |
717 | | - raise NotImplementedError |
| 717 | + async def full( |
| 718 | + self, *, name: str, shape: ChunkCoords, fill_value: Any | None, **kwargs: Any |
| 719 | + ) -> AsyncArray: |
| 720 | + return await async_api.full( |
| 721 | + shape=shape, fill_value=fill_value, store=self.store_path, path=name, **kwargs |
| 722 | + ) |
718 | 723 |
|
719 | | - async def empty_like(self, prototype: AsyncArray, **kwargs: Any) -> AsyncArray: |
720 | | - raise NotImplementedError |
| 724 | + async def empty_like( |
| 725 | + self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any |
| 726 | + ) -> AsyncArray: |
| 727 | + return await async_api.empty_like(a=prototype, store=self.store_path, path=name, **kwargs) |
721 | 728 |
|
722 | | - async def zeros_like(self, prototype: AsyncArray, **kwargs: Any) -> AsyncArray: |
723 | | - raise NotImplementedError |
| 729 | + async def zeros_like( |
| 730 | + self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any |
| 731 | + ) -> AsyncArray: |
| 732 | + return await async_api.zeros_like(a=prototype, store=self.store_path, path=name, **kwargs) |
724 | 733 |
|
725 | | - async def ones_like(self, prototype: AsyncArray, **kwargs: Any) -> AsyncArray: |
726 | | - raise NotImplementedError |
| 734 | + async def ones_like( |
| 735 | + self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any |
| 736 | + ) -> AsyncArray: |
| 737 | + return await async_api.ones_like(a=prototype, store=self.store_path, path=name, **kwargs) |
727 | 738 |
|
728 | | - async def full_like(self, prototype: AsyncArray, **kwargs: Any) -> AsyncArray: |
729 | | - raise NotImplementedError |
| 739 | + async def full_like( |
| 740 | + self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any |
| 741 | + ) -> AsyncArray: |
| 742 | + return await async_api.full_like(a=prototype, store=self.store_path, path=name, **kwargs) |
730 | 743 |
|
731 | 744 | async def move(self, source: str, dest: str) -> None: |
732 | 745 | raise NotImplementedError |
@@ -1058,29 +1071,43 @@ def require_array(self, name: str, **kwargs: Any) -> Array: |
1058 | 1071 | """ |
1059 | 1072 | return Array(self._sync(self._async_group.require_array(name, **kwargs))) |
1060 | 1073 |
|
1061 | | - def empty(self, **kwargs: Any) -> Array: |
1062 | | - return Array(self._sync(self._async_group.empty(**kwargs))) |
| 1074 | + def empty(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> Array: |
| 1075 | + return Array(self._sync(self._async_group.empty(name=name, shape=shape, **kwargs))) |
1063 | 1076 |
|
1064 | | - def zeros(self, **kwargs: Any) -> Array: |
1065 | | - return Array(self._sync(self._async_group.zeros(**kwargs))) |
| 1077 | + def zeros(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> Array: |
| 1078 | + return Array(self._sync(self._async_group.zeros(name=name, shape=shape, **kwargs))) |
1066 | 1079 |
|
1067 | | - def ones(self, **kwargs: Any) -> Array: |
1068 | | - return Array(self._sync(self._async_group.ones(**kwargs))) |
| 1080 | + def ones(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> Array: |
| 1081 | + return Array(self._sync(self._async_group.ones(name=name, shape=shape, **kwargs))) |
1069 | 1082 |
|
1070 | | - def full(self, **kwargs: Any) -> Array: |
1071 | | - return Array(self._sync(self._async_group.full(**kwargs))) |
| 1083 | + def full( |
| 1084 | + self, *, name: str, shape: ChunkCoords, fill_value: Any | None, **kwargs: Any |
| 1085 | + ) -> Array: |
| 1086 | + return Array( |
| 1087 | + self._sync( |
| 1088 | + self._async_group.full(name=name, shape=shape, fill_value=fill_value, **kwargs) |
| 1089 | + ) |
| 1090 | + ) |
1072 | 1091 |
|
1073 | | - def empty_like(self, prototype: AsyncArray, **kwargs: Any) -> Array: |
1074 | | - return Array(self._sync(self._async_group.empty_like(prototype, **kwargs))) |
| 1092 | + def empty_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array: |
| 1093 | + return Array( |
| 1094 | + self._sync(self._async_group.empty_like(name=name, prototype=prototype, **kwargs)) |
| 1095 | + ) |
1075 | 1096 |
|
1076 | | - def zeros_like(self, prototype: AsyncArray, **kwargs: Any) -> Array: |
1077 | | - return Array(self._sync(self._async_group.zeros_like(prototype, **kwargs))) |
| 1097 | + def zeros_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array: |
| 1098 | + return Array( |
| 1099 | + self._sync(self._async_group.zeros_like(name=name, prototype=prototype, **kwargs)) |
| 1100 | + ) |
1078 | 1101 |
|
1079 | | - def ones_like(self, prototype: AsyncArray, **kwargs: Any) -> Array: |
1080 | | - return Array(self._sync(self._async_group.ones_like(prototype, **kwargs))) |
| 1102 | + def ones_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array: |
| 1103 | + return Array( |
| 1104 | + self._sync(self._async_group.ones_like(name=name, prototype=prototype, **kwargs)) |
| 1105 | + ) |
1081 | 1106 |
|
1082 | | - def full_like(self, prototype: AsyncArray, **kwargs: Any) -> Array: |
1083 | | - return Array(self._sync(self._async_group.full_like(prototype, **kwargs))) |
| 1107 | + def full_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array: |
| 1108 | + return Array( |
| 1109 | + self._sync(self._async_group.full_like(name=name, prototype=prototype, **kwargs)) |
| 1110 | + ) |
1084 | 1111 |
|
1085 | 1112 | def move(self, source: str, dest: str) -> None: |
1086 | 1113 | return self._sync(self._async_group.move(source, dest)) |
|
0 commit comments