shape_base.pyi 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. from collections.abc import Sequence
  2. from typing import TypeVar, overload, Any, SupportsIndex
  3. from numpy import generic, _CastingKind
  4. from numpy._typing import (
  5. NDArray,
  6. ArrayLike,
  7. DTypeLike,
  8. _ArrayLike,
  9. _DTypeLike,
  10. )
  11. _SCT = TypeVar("_SCT", bound=generic)
  12. _ArrayType = TypeVar("_ArrayType", bound=NDArray[Any])
  13. __all__: list[str]
  14. @overload
  15. def atleast_1d(arys: _ArrayLike[_SCT], /) -> NDArray[_SCT]: ...
  16. @overload
  17. def atleast_1d(arys: ArrayLike, /) -> NDArray[Any]: ...
  18. @overload
  19. def atleast_1d(*arys: ArrayLike) -> list[NDArray[Any]]: ...
  20. @overload
  21. def atleast_2d(arys: _ArrayLike[_SCT], /) -> NDArray[_SCT]: ...
  22. @overload
  23. def atleast_2d(arys: ArrayLike, /) -> NDArray[Any]: ...
  24. @overload
  25. def atleast_2d(*arys: ArrayLike) -> list[NDArray[Any]]: ...
  26. @overload
  27. def atleast_3d(arys: _ArrayLike[_SCT], /) -> NDArray[_SCT]: ...
  28. @overload
  29. def atleast_3d(arys: ArrayLike, /) -> NDArray[Any]: ...
  30. @overload
  31. def atleast_3d(*arys: ArrayLike) -> list[NDArray[Any]]: ...
  32. @overload
  33. def vstack(
  34. tup: Sequence[_ArrayLike[_SCT]],
  35. *,
  36. dtype: None = ...,
  37. casting: _CastingKind = ...
  38. ) -> NDArray[_SCT]: ...
  39. @overload
  40. def vstack(
  41. tup: Sequence[ArrayLike],
  42. *,
  43. dtype: _DTypeLike[_SCT],
  44. casting: _CastingKind = ...
  45. ) -> NDArray[_SCT]: ...
  46. @overload
  47. def vstack(
  48. tup: Sequence[ArrayLike],
  49. *,
  50. dtype: DTypeLike = ...,
  51. casting: _CastingKind = ...
  52. ) -> NDArray[Any]: ...
  53. @overload
  54. def hstack(
  55. tup: Sequence[_ArrayLike[_SCT]],
  56. *,
  57. dtype: None = ...,
  58. casting: _CastingKind = ...
  59. ) -> NDArray[_SCT]: ...
  60. @overload
  61. def hstack(
  62. tup: Sequence[ArrayLike],
  63. *,
  64. dtype: _DTypeLike[_SCT],
  65. casting: _CastingKind = ...
  66. ) -> NDArray[_SCT]: ...
  67. @overload
  68. def hstack(
  69. tup: Sequence[ArrayLike],
  70. *,
  71. dtype: DTypeLike = ...,
  72. casting: _CastingKind = ...
  73. ) -> NDArray[Any]: ...
  74. @overload
  75. def stack(
  76. arrays: Sequence[_ArrayLike[_SCT]],
  77. axis: SupportsIndex = ...,
  78. out: None = ...,
  79. *,
  80. dtype: None = ...,
  81. casting: _CastingKind = ...
  82. ) -> NDArray[_SCT]: ...
  83. @overload
  84. def stack(
  85. arrays: Sequence[ArrayLike],
  86. axis: SupportsIndex = ...,
  87. out: None = ...,
  88. *,
  89. dtype: _DTypeLike[_SCT],
  90. casting: _CastingKind = ...
  91. ) -> NDArray[_SCT]: ...
  92. @overload
  93. def stack(
  94. arrays: Sequence[ArrayLike],
  95. axis: SupportsIndex = ...,
  96. out: None = ...,
  97. *,
  98. dtype: DTypeLike = ...,
  99. casting: _CastingKind = ...
  100. ) -> NDArray[Any]: ...
  101. @overload
  102. def stack(
  103. arrays: Sequence[ArrayLike],
  104. axis: SupportsIndex = ...,
  105. out: _ArrayType = ...,
  106. *,
  107. dtype: DTypeLike = ...,
  108. casting: _CastingKind = ...
  109. ) -> _ArrayType: ...
  110. @overload
  111. def block(arrays: _ArrayLike[_SCT]) -> NDArray[_SCT]: ...
  112. @overload
  113. def block(arrays: ArrayLike) -> NDArray[Any]: ...