einsumfunc.pyi 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. from typing import Any
  2. import numpy as np
  3. import numpy.typing as npt
  4. from typing_extensions import assert_type
  5. AR_LIKE_b: list[bool]
  6. AR_LIKE_u: list[np.uint32]
  7. AR_LIKE_i: list[int]
  8. AR_LIKE_f: list[float]
  9. AR_LIKE_c: list[complex]
  10. AR_LIKE_U: list[str]
  11. AR_o: npt.NDArray[np.object_]
  12. OUT_f: npt.NDArray[np.float64]
  13. assert_type(np.einsum("i,i->i", AR_LIKE_b, AR_LIKE_b), Any)
  14. assert_type(np.einsum("i,i->i", AR_o, AR_o), Any)
  15. assert_type(np.einsum("i,i->i", AR_LIKE_u, AR_LIKE_u), Any)
  16. assert_type(np.einsum("i,i->i", AR_LIKE_i, AR_LIKE_i), Any)
  17. assert_type(np.einsum("i,i->i", AR_LIKE_f, AR_LIKE_f), Any)
  18. assert_type(np.einsum("i,i->i", AR_LIKE_c, AR_LIKE_c), Any)
  19. assert_type(np.einsum("i,i->i", AR_LIKE_b, AR_LIKE_i), Any)
  20. assert_type(np.einsum("i,i,i,i->i", AR_LIKE_b, AR_LIKE_u, AR_LIKE_i, AR_LIKE_c), Any)
  21. assert_type(np.einsum("i,i->i", AR_LIKE_c, AR_LIKE_c, out=OUT_f), npt.NDArray[np.float64])
  22. assert_type(np.einsum("i,i->i", AR_LIKE_U, AR_LIKE_U, dtype=bool, casting="unsafe", out=OUT_f), npt.NDArray[np.float64])
  23. assert_type(np.einsum("i,i->i", AR_LIKE_f, AR_LIKE_f, dtype="c16"), Any)
  24. assert_type(np.einsum("i,i->i", AR_LIKE_U, AR_LIKE_U, dtype=bool, casting="unsafe"), Any)
  25. assert_type(np.einsum_path("i,i->i", AR_LIKE_b, AR_LIKE_b), tuple[list[Any], str])
  26. assert_type(np.einsum_path("i,i->i", AR_LIKE_u, AR_LIKE_u), tuple[list[Any], str])
  27. assert_type(np.einsum_path("i,i->i", AR_LIKE_i, AR_LIKE_i), tuple[list[Any], str])
  28. assert_type(np.einsum_path("i,i->i", AR_LIKE_f, AR_LIKE_f), tuple[list[Any], str])
  29. assert_type(np.einsum_path("i,i->i", AR_LIKE_c, AR_LIKE_c), tuple[list[Any], str])
  30. assert_type(np.einsum_path("i,i->i", AR_LIKE_b, AR_LIKE_i), tuple[list[Any], str])
  31. assert_type(np.einsum_path("i,i,i,i->i", AR_LIKE_b, AR_LIKE_u, AR_LIKE_i, AR_LIKE_c), tuple[list[Any], str])
  32. assert_type(np.einsum([[1, 1], [1, 1]], AR_LIKE_i, AR_LIKE_i), Any)
  33. assert_type(np.einsum_path([[1, 1], [1, 1]], AR_LIKE_i, AR_LIKE_i), tuple[list[Any], str])