@@ -624,11 +624,61 @@ def dtype_factory(kind, sizes, valid_sizes, endianness):
624
624
return strat .map ((endianness + kind ).format )
625
625
626
626
627
+ @overload
628
+ @defines_dtype_strategy
629
+ def unsigned_integer_dtypes (
630
+ * ,
631
+ endianness : str = "?" ,
632
+ sizes : Literal [8 ],
633
+ ) -> st .SearchStrategy ["np.dtype[np.uint8]" ]: ...
634
+
635
+
636
+ @overload
637
+ @defines_dtype_strategy
638
+ def unsigned_integer_dtypes (
639
+ * ,
640
+ endianness : str = "?" ,
641
+ sizes : Literal [16 ],
642
+ ) -> st .SearchStrategy ["np.dtype[np.uint16]" ]: ...
643
+
644
+
645
+ @overload
646
+ @defines_dtype_strategy
647
+ def unsigned_integer_dtypes (
648
+ * ,
649
+ endianness : str = "?" ,
650
+ sizes : Literal [32 ],
651
+ ) -> st .SearchStrategy ["np.dtype[np.uint32]" ]: ...
652
+
653
+
654
+ @overload
655
+ @defines_dtype_strategy
656
+ def unsigned_integer_dtypes (
657
+ * ,
658
+ endianness : str = "?" ,
659
+ sizes : Literal [64 ],
660
+ ) -> st .SearchStrategy ["np.dtype[np.uint64]" ]: ...
661
+
662
+
663
+ @overload
627
664
@defines_dtype_strategy
628
665
def unsigned_integer_dtypes (
629
666
* ,
630
667
endianness : str = "?" ,
631
668
sizes : Sequence [Literal [8 , 16 , 32 , 64 ]] = (8 , 16 , 32 , 64 ),
669
+ ) -> st .SearchStrategy ["np.dtype[np.unsignedinteger[Any]]" ]: ...
670
+
671
+
672
+ @defines_dtype_strategy
673
+ def unsigned_integer_dtypes (
674
+ * ,
675
+ endianness : str = "?" ,
676
+ sizes : Union [Literal [8 , 16 , 32 , 64 ], Sequence [Literal [8 , 16 , 32 , 64 ]]] = (
677
+ 8 ,
678
+ 16 ,
679
+ 32 ,
680
+ 64 ,
681
+ ),
632
682
) -> st .SearchStrategy ["np.dtype[np.unsignedinteger[Any]]" ]:
633
683
"""Return a strategy for unsigned integer dtypes.
634
684
@@ -642,11 +692,61 @@ def unsigned_integer_dtypes(
642
692
return dtype_factory ("u" , sizes , (8 , 16 , 32 , 64 ), endianness )
643
693
644
694
695
+ @overload
696
+ @defines_dtype_strategy
697
+ def integer_dtypes (
698
+ * ,
699
+ endianness : str = "?" ,
700
+ sizes : Literal [8 ],
701
+ ) -> st .SearchStrategy ["np.dtype[np.int8]" ]: ...
702
+
703
+
704
+ @overload
705
+ @defines_dtype_strategy
706
+ def integer_dtypes (
707
+ * ,
708
+ endianness : str = "?" ,
709
+ sizes : Literal [16 ],
710
+ ) -> st .SearchStrategy ["np.dtype[np.int16]" ]: ...
711
+
712
+
713
+ @overload
714
+ @defines_dtype_strategy
715
+ def integer_dtypes (
716
+ * ,
717
+ endianness : str = "?" ,
718
+ sizes : Literal [32 ],
719
+ ) -> st .SearchStrategy ["np.dtype[np.int32]" ]: ...
720
+
721
+
722
+ @overload
723
+ @defines_dtype_strategy
724
+ def integer_dtypes (
725
+ * ,
726
+ endianness : str = "?" ,
727
+ sizes : Literal [64 ],
728
+ ) -> st .SearchStrategy ["np.dtype[np.int64]" ]: ...
729
+
730
+
731
+ @overload
645
732
@defines_dtype_strategy
646
733
def integer_dtypes (
647
734
* ,
648
735
endianness : str = "?" ,
649
736
sizes : Sequence [Literal [8 , 16 , 32 , 64 ]] = (8 , 16 , 32 , 64 ),
737
+ ) -> st .SearchStrategy ["np.dtype[np.signedinteger[Any]]" ]: ...
738
+
739
+
740
+ @defines_dtype_strategy
741
+ def integer_dtypes (
742
+ * ,
743
+ endianness : str = "?" ,
744
+ sizes : Union [Literal [8 , 16 , 32 , 64 ], Sequence [Literal [8 , 16 , 32 , 64 ]]] = (
745
+ 8 ,
746
+ 16 ,
747
+ 32 ,
748
+ 64 ,
749
+ ),
650
750
) -> st .SearchStrategy ["np.dtype[np.signedinteger[Any]]" ]:
651
751
"""Return a strategy for signed integer dtypes.
652
752
@@ -656,11 +756,58 @@ def integer_dtypes(
656
756
return dtype_factory ("i" , sizes , (8 , 16 , 32 , 64 ), endianness )
657
757
658
758
759
+ @overload
760
+ @defines_dtype_strategy
761
+ def floating_dtypes (
762
+ * ,
763
+ endianness : str = "?" ,
764
+ sizes : Literal [16 ],
765
+ ) -> st .SearchStrategy ["np.dtype[np.float16]" ]: ...
766
+
767
+
768
+ @overload
769
+ @defines_dtype_strategy
770
+ def floating_dtypes (
771
+ * ,
772
+ endianness : str = "?" ,
773
+ sizes : Literal [32 ],
774
+ ) -> st .SearchStrategy ["np.dtype[np.float32]" ]: ...
775
+
776
+
777
+ @overload
778
+ @defines_dtype_strategy
779
+ def floating_dtypes (
780
+ * ,
781
+ endianness : str = "?" ,
782
+ sizes : Literal [64 ],
783
+ ) -> st .SearchStrategy ["np.dtype[np.float64]" ]: ...
784
+
785
+
786
+ @overload
787
+ @defines_dtype_strategy
788
+ def floating_dtypes (
789
+ * ,
790
+ endianness : str = "?" ,
791
+ sizes : Literal [128 ],
792
+ ) -> st .SearchStrategy ["np.dtype[np.float128]" ]: ...
793
+
794
+
795
+ @overload
659
796
@defines_dtype_strategy
660
797
def floating_dtypes (
661
798
* ,
662
799
endianness : str = "?" ,
663
800
sizes : Sequence [Literal [16 , 32 , 64 , 96 , 128 ]] = (16 , 32 , 64 ),
801
+ ) -> st .SearchStrategy ["np.dtype[np.floating[Any]]" ]: ...
802
+
803
+
804
+ @defines_dtype_strategy
805
+ def floating_dtypes (
806
+ * ,
807
+ endianness : str = "?" ,
808
+ sizes : Union [
809
+ Literal [16 , 32 , 64 , 96 , 128 ], Sequence [Literal [16 , 32 , 64 , 96 , 128 ]]
810
+ ] = (16 , 32 , 64 ),
664
811
) -> st .SearchStrategy ["np.dtype[np.floating[Any]]" ]:
665
812
"""Return a strategy for floating-point dtypes.
666
813
@@ -674,11 +821,50 @@ def floating_dtypes(
674
821
return dtype_factory ("f" , sizes , (16 , 32 , 64 , 96 , 128 ), endianness )
675
822
676
823
824
+ @overload
825
+ @defines_dtype_strategy
826
+ def complex_number_dtypes (
827
+ * ,
828
+ endianness : str = "?" ,
829
+ sizes : Literal [64 ],
830
+ ) -> st .SearchStrategy ["np.dtype[np.complex64]" ]: ...
831
+
832
+
833
+ @overload
834
+ @defines_dtype_strategy
835
+ def complex_number_dtypes (
836
+ * ,
837
+ endianness : str = "?" ,
838
+ sizes : Literal [128 ],
839
+ ) -> st .SearchStrategy ["np.dtype[np.complex128]" ]: ...
840
+
841
+
842
+ @overload
843
+ @defines_dtype_strategy
844
+ def complex_number_dtypes (
845
+ * ,
846
+ endianness : str = "?" ,
847
+ sizes : Literal [256 ],
848
+ ) -> st .SearchStrategy ["np.dtype[np.complex256]" ]: ...
849
+
850
+
851
+ @overload
677
852
@defines_dtype_strategy
678
853
def complex_number_dtypes (
679
854
* ,
680
855
endianness : str = "?" ,
681
856
sizes : Sequence [Literal [64 , 128 , 192 , 256 ]] = (64 , 128 ),
857
+ ) -> st .SearchStrategy ["np.dtype[np.complexfloating[Any, Any]]" ]: ...
858
+
859
+
860
+ @defines_dtype_strategy
861
+ def complex_number_dtypes (
862
+ * ,
863
+ endianness : str = "?" ,
864
+ sizes : Union [Literal [64 , 128 , 192 , 256 ], Sequence [Literal [64 , 128 , 192 , 256 ]]] = (
865
+ 64 ,
866
+ 128 ,
867
+ ),
682
868
) -> st .SearchStrategy ["np.dtype[np.complexfloating[Any, Any]]" ]:
683
869
"""Return a strategy for complex-number dtypes.
684
870
0 commit comments