@@ -13,7 +13,6 @@ if sys.version_info >= (3, 9):
13
13
from types import GenericAlias
14
14
15
15
from numpy ._pytesttester import PytestTester
16
- from numpy .core .multiarray import flagsobj
17
16
from numpy .core ._internal import _ctypes
18
17
from numpy .core .getlimits import MachArLike
19
18
@@ -196,6 +195,7 @@ from typing import (
196
195
Protocol ,
197
196
SupportsIndex ,
198
197
Final ,
198
+ final ,
199
199
)
200
200
201
201
# Ensures that the stubs are picked up
@@ -351,6 +351,8 @@ from numpy.core.multiarray import (
351
351
geterrobj as geterrobj ,
352
352
fromstring as fromstring ,
353
353
frompyfunc as frompyfunc ,
354
+ nested_iters as nested_iters ,
355
+ flagsobj ,
354
356
)
355
357
356
358
from numpy .core .numeric import (
@@ -768,35 +770,6 @@ class memmap(ndarray[_ShapeType, _DType_co]):
768
770
) -> Any : ...
769
771
def __getattr__ (self , key : str ) -> Any : ...
770
772
771
- class nditer :
772
- def __new__ (
773
- cls ,
774
- op : Any ,
775
- flags : Any = ...,
776
- op_flags : Any = ...,
777
- op_dtypes : Any = ...,
778
- order : Any = ...,
779
- casting : Any = ...,
780
- op_axes : Any = ...,
781
- itershape : Any = ...,
782
- buffersize : Any = ...,
783
- ) -> Any : ...
784
- def __getattr__ (self , key : str ) -> Any : ...
785
- def __enter__ (self ) -> nditer : ...
786
- def __exit__ (
787
- self ,
788
- exc_type : None | Type [BaseException ],
789
- exc_value : None | BaseException ,
790
- traceback : None | TracebackType ,
791
- ) -> None : ...
792
- def __iter__ (self ) -> Iterator [Any ]: ...
793
- def __next__ (self ) -> Any : ...
794
- def __len__ (self ) -> int : ...
795
- def __copy__ (self ) -> nditer : ...
796
- def __getitem__ (self , index : SupportsIndex | slice ) -> Any : ...
797
- def __setitem__ (self , index : SupportsIndex | slice , value : Any ) -> None : ...
798
- def __delitem__ (self , key : SupportsIndex | slice ) -> None : ...
799
-
800
773
class poly1d :
801
774
def __init__ (
802
775
self ,
@@ -885,9 +858,6 @@ alltrue = all
885
858
886
859
def show_config () -> None : ...
887
860
888
- # TODO: Sort out which parameters are positional-only
889
- def nested_iters (* args , ** kwargs ): ... # TODO: Sort out parameters
890
-
891
861
_NdArraySubClass = TypeVar ("_NdArraySubClass" , bound = ndarray )
892
862
_DTypeScalar_co = TypeVar ("_DTypeScalar_co" , covariant = True , bound = generic )
893
863
_ByteOrder = L ["S" , "<" , ">" , "=" , "|" , "L" , "B" , "N" , "I" ]
@@ -3751,3 +3721,110 @@ class record(void):
3751
3721
def __getitem__ (self , key : str | SupportsIndex ) -> Any : ...
3752
3722
@overload
3753
3723
def __getitem__ (self , key : list [str ]) -> record : ...
3724
+
3725
+ _NDIterFlagsKind = L [
3726
+ "buffered" ,
3727
+ "c_index" ,
3728
+ "copy_if_overlap" ,
3729
+ "common_dtype" ,
3730
+ "delay_bufalloc" ,
3731
+ "external_loop" ,
3732
+ "f_index" ,
3733
+ "grow_inner" , "growinner" ,
3734
+ "multi_index" ,
3735
+ "ranged" ,
3736
+ "refs_ok" ,
3737
+ "reduce_ok" ,
3738
+ "zerosize_ok" ,
3739
+ ]
3740
+
3741
+ _NDIterOpFlagsKind = L [
3742
+ "aligned" ,
3743
+ "allocate" ,
3744
+ "arraymask" ,
3745
+ "copy" ,
3746
+ "config" ,
3747
+ "nbo" ,
3748
+ "no_subtype" ,
3749
+ "no_broadcast" ,
3750
+ "overlap_assume_elementwise" ,
3751
+ "readonly" ,
3752
+ "readwrite" ,
3753
+ "updateifcopy" ,
3754
+ "virtual" ,
3755
+ "writeonly" ,
3756
+ "writemasked"
3757
+ ]
3758
+
3759
+ @final
3760
+ class nditer :
3761
+ def __new__ (
3762
+ cls ,
3763
+ op : ArrayLike | Sequence [ArrayLike ],
3764
+ flags : None | Sequence [_NDIterFlagsKind ] = ...,
3765
+ op_flags : None | Sequence [Sequence [_NDIterOpFlagsKind ]] = ...,
3766
+ op_dtypes : DTypeLike | Sequence [DTypeLike ] = ...,
3767
+ order : _OrderKACF = ...,
3768
+ casting : _CastingKind = ...,
3769
+ op_axes : None | Sequence [Sequence [SupportsIndex ]] = ...,
3770
+ itershape : None | _ShapeLike = ...,
3771
+ buffersize : SupportsIndex = ...,
3772
+ ) -> nditer : ...
3773
+ def __enter__ (self ) -> nditer : ...
3774
+ def __exit__ (
3775
+ self ,
3776
+ exc_type : None | Type [BaseException ],
3777
+ exc_value : None | BaseException ,
3778
+ traceback : None | TracebackType ,
3779
+ ) -> None : ...
3780
+ def __iter__ (self ) -> nditer : ...
3781
+ def __next__ (self ) -> Tuple [NDArray [Any ], ...]: ...
3782
+ def __len__ (self ) -> int : ...
3783
+ def __copy__ (self ) -> nditer : ...
3784
+ @overload
3785
+ def __getitem__ (self , index : SupportsIndex ) -> NDArray [Any ]: ...
3786
+ @overload
3787
+ def __getitem__ (self , index : slice ) -> Tuple [NDArray [Any ], ...]: ...
3788
+ def __setitem__ (self , index : slice | SupportsIndex , value : ArrayLike ) -> None : ...
3789
+ def close (self ) -> None : ...
3790
+ def copy (self ) -> nditer : ...
3791
+ def debug_print (self ) -> None : ...
3792
+ def enable_external_loop (self ) -> None : ...
3793
+ def iternext (self ) -> bool : ...
3794
+ def remove_axis (self , i : SupportsIndex , / ) -> None : ...
3795
+ def remove_multi_index (self ) -> None : ...
3796
+ def reset (self ) -> None : ...
3797
+ @property
3798
+ def dtypes (self ) -> Tuple [dtype [Any ], ...]: ...
3799
+ @property
3800
+ def finished (self ) -> bool : ...
3801
+ @property
3802
+ def has_delayed_bufalloc (self ) -> bool : ...
3803
+ @property
3804
+ def has_index (self ) -> bool : ...
3805
+ @property
3806
+ def has_multi_index (self ) -> bool : ...
3807
+ @property
3808
+ def index (self ) -> int : ...
3809
+ @property
3810
+ def iterationneedsapi (self ) -> bool : ...
3811
+ @property
3812
+ def iterindex (self ) -> int : ...
3813
+ @property
3814
+ def iterrange (self ) -> Tuple [int , ...]: ...
3815
+ @property
3816
+ def itersize (self ) -> int : ...
3817
+ @property
3818
+ def itviews (self ) -> Tuple [NDArray [Any ], ...]: ...
3819
+ @property
3820
+ def multi_index (self ) -> Tuple [int , ...]: ...
3821
+ @property
3822
+ def ndim (self ) -> int : ...
3823
+ @property
3824
+ def nop (self ) -> int : ...
3825
+ @property
3826
+ def operands (self ) -> Tuple [NDArray [Any ], ...]: ...
3827
+ @property
3828
+ def shape (self ) -> Tuple [int , ...]: ...
3829
+ @property
3830
+ def value (self ) -> Tuple [NDArray [Any ], ...]: ...
0 commit comments