_ufunclike_impl.pyi 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. from typing import Any, overload, TypeVar
  2. import numpy as np
  3. from numpy import floating, object_
  4. from numpy._typing import (
  5. NDArray,
  6. _FloatLike_co,
  7. _ArrayLikeFloat_co,
  8. _ArrayLikeObject_co,
  9. )
  10. __all__ = ["fix", "isneginf", "isposinf"]
  11. _ArrayType = TypeVar("_ArrayType", bound=NDArray[Any])
  12. @overload
  13. def fix( # type: ignore[misc]
  14. x: _FloatLike_co,
  15. out: None = ...,
  16. ) -> floating[Any]: ...
  17. @overload
  18. def fix(
  19. x: _ArrayLikeFloat_co,
  20. out: None = ...,
  21. ) -> NDArray[floating[Any]]: ...
  22. @overload
  23. def fix(
  24. x: _ArrayLikeObject_co,
  25. out: None = ...,
  26. ) -> NDArray[object_]: ...
  27. @overload
  28. def fix(
  29. x: _ArrayLikeFloat_co | _ArrayLikeObject_co,
  30. out: _ArrayType,
  31. ) -> _ArrayType: ...
  32. @overload
  33. def isposinf( # type: ignore[misc]
  34. x: _FloatLike_co,
  35. out: None = ...,
  36. ) -> np.bool: ...
  37. @overload
  38. def isposinf(
  39. x: _ArrayLikeFloat_co,
  40. out: None = ...,
  41. ) -> NDArray[np.bool]: ...
  42. @overload
  43. def isposinf(
  44. x: _ArrayLikeFloat_co,
  45. out: _ArrayType,
  46. ) -> _ArrayType: ...
  47. @overload
  48. def isneginf( # type: ignore[misc]
  49. x: _FloatLike_co,
  50. out: None = ...,
  51. ) -> np.bool: ...
  52. @overload
  53. def isneginf(
  54. x: _ArrayLikeFloat_co,
  55. out: None = ...,
  56. ) -> NDArray[np.bool]: ...
  57. @overload
  58. def isneginf(
  59. x: _ArrayLikeFloat_co,
  60. out: _ArrayType,
  61. ) -> _ArrayType: ...