@@ -6,12 +6,13 @@ from typing_extensions import TypeVar
66import _numtype as _nt
77from numpy import _OrderKACF # noqa: ICN003
88from numpy ._typing import (
9- _ArrayLikeBool_co ,
10- _ArrayLikeComplex_co ,
11- _ArrayLikeFloat_co ,
12- _ArrayLikeInt_co ,
13- _ArrayLikeObject_co ,
14- _ArrayLikeUInt_co ,
9+ _DTypeLikeBool ,
10+ _DTypeLikeComplex ,
11+ _DTypeLikeComplex_co ,
12+ _DTypeLikeFloat ,
13+ _DTypeLikeInt ,
14+ _DTypeLikeObject ,
15+ _DTypeLikeUInt ,
1516)
1617
1718__all__ = ["einsum" , "einsum_path" ]
@@ -39,9 +40,9 @@ _ToDTypeComplex_co: TypeAlias = _nt.ToDTypeBool | _ToDTypeUInt | _ToDTypeInt | _
3940# Something like `is_scalar = bool(__subscripts.partition("->")[-1])`
4041@overload
4142def einsum (
42- subscripts : str | _ArrayLikeInt_co ,
43+ subscripts : str | _nt . CoInteger_nd ,
4344 / ,
44- * operands : _ArrayLikeBool_co ,
45+ * operands : _nt . ToBool_nd ,
4546 out : None = None ,
4647 optimize : _OptimizeKind = False ,
4748 dtype : _nt .ToDTypeBool | None = None ,
@@ -50,9 +51,9 @@ def einsum(
5051) -> Incomplete : ...
5152@overload
5253def einsum (
53- subscripts : str | _ArrayLikeInt_co ,
54+ subscripts : str | _nt . CoInteger_nd ,
5455 / ,
55- * operands : _ArrayLikeUInt_co ,
56+ * operands : _nt . CoUInt64_nd ,
5657 out : None = None ,
5758 dtype : _ToDTypeUInt | None = None ,
5859 order : _OrderKACF = "K" ,
@@ -61,9 +62,9 @@ def einsum(
6162) -> Incomplete : ...
6263@overload
6364def einsum (
64- subscripts : str | _ArrayLikeInt_co ,
65+ subscripts : str | _nt . CoInteger_nd ,
6566 / ,
66- * operands : _ArrayLikeInt_co ,
67+ * operands : _nt . CoInteger_nd ,
6768 out : None = None ,
6869 dtype : _ToDTypeInt | None = None ,
6970 order : _OrderKACF = "K" ,
@@ -72,9 +73,9 @@ def einsum(
7273) -> Incomplete : ...
7374@overload
7475def einsum (
75- subscripts : str | _ArrayLikeInt_co ,
76+ subscripts : str | _nt . CoInteger_nd ,
7677 / ,
77- * operands : _ArrayLikeFloat_co ,
78+ * operands : _nt . CoFloating_nd ,
7879 out : None = None ,
7980 dtype : _ToDTypeFloat | None = None ,
8081 order : _OrderKACF = "K" ,
@@ -83,9 +84,9 @@ def einsum(
8384) -> Incomplete : ...
8485@overload
8586def einsum (
86- subscripts : str | _ArrayLikeInt_co ,
87+ subscripts : str | _nt . CoInteger_nd ,
8788 / ,
88- * operands : _ArrayLikeComplex_co ,
89+ * operands : _nt . CoComplex_nd ,
8990 out : None = None ,
9091 dtype : _ToDTypeComplex | None = None ,
9192 order : _OrderKACF = "K" ,
@@ -94,7 +95,7 @@ def einsum(
9495) -> Incomplete : ...
9596@overload
9697def einsum (
97- subscripts : str | _ArrayLikeInt_co ,
98+ subscripts : str | _nt . CoInteger_nd ,
9899 / ,
99100 * operands : Any ,
100101 casting : _CastingUnsafe ,
@@ -105,9 +106,9 @@ def einsum(
105106) -> Incomplete : ...
106107@overload
107108def einsum (
108- subscripts : str | _ArrayLikeInt_co ,
109+ subscripts : str | _nt . CoInteger_nd ,
109110 / ,
110- * operands : _ArrayLikeComplex_co ,
111+ * operands : _nt . CoComplex_nd ,
111112 out : _ArrayT ,
112113 dtype : _ToDTypeComplex_co | None = None ,
113114 order : _OrderKACF = "K" ,
@@ -116,7 +117,7 @@ def einsum(
116117) -> _ArrayT : ...
117118@overload
118119def einsum (
119- subscripts : str | _ArrayLikeInt_co ,
120+ subscripts : str | _nt . CoInteger_nd ,
120121 / ,
121122 * operands : Any ,
122123 out : _ArrayT ,
@@ -127,9 +128,9 @@ def einsum(
127128) -> _ArrayT : ...
128129@overload
129130def einsum (
130- subscripts : str | _ArrayLikeInt_co ,
131+ subscripts : str | _nt . CoInteger_nd ,
131132 / ,
132- * operands : _ArrayLikeObject_co ,
133+ * operands : _nt . ToObject_nd ,
133134 out : None = None ,
134135 dtype : _nt .ToDTypeObject | None = None ,
135136 order : _OrderKACF = "K" ,
@@ -138,7 +139,7 @@ def einsum(
138139) -> Incomplete : ...
139140@overload
140141def einsum (
141- subscripts : str | _ArrayLikeInt_co ,
142+ subscripts : str | _nt . CoInteger_nd ,
142143 / ,
143144 * operands : Any ,
144145 casting : _CastingUnsafe ,
@@ -149,9 +150,9 @@ def einsum(
149150) -> Incomplete : ...
150151@overload
151152def einsum (
152- subscripts : str | _ArrayLikeInt_co ,
153+ subscripts : str | _nt . CoInteger_nd ,
153154 / ,
154- * operands : _ArrayLikeObject_co ,
155+ * operands : _nt . ToObject_nd ,
155156 out : _ArrayT ,
156157 dtype : _nt .ToDTypeObject | None = None ,
157158 order : _OrderKACF = "K" ,
@@ -160,7 +161,7 @@ def einsum(
160161) -> _ArrayT : ...
161162@overload
162163def einsum (
163- subscripts : str | _ArrayLikeInt_co ,
164+ subscripts : str | _nt . CoInteger_nd ,
164165 / ,
165166 * operands : Any ,
166167 out : _ArrayT ,
@@ -174,9 +175,9 @@ def einsum(
174175# NOTE: `einsum_call` is a hidden kwarg unavailable for public use.
175176# It is therefore excluded from the signatures below.
176177def einsum_path (
177- subscripts : str | _ArrayLikeInt_co ,
178+ subscripts : str | _nt . CoInteger_nd ,
178179 / ,
179- * operands : _ArrayLikeComplex_co | _nt .ToDTypeObject ,
180+ * operands : _nt . CoComplex_nd | _nt .ToDTypeObject ,
180181 optimize : _OptimizeKind = "greedy" ,
181182 einsum_call : L [False ] = False ,
182183) -> tuple [list [str | tuple [int , ...]], str ]: ...
0 commit comments