zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
U
O±d,ã@s&ddlmZddlZddlZddlmZmZmZddlm    Z    m
Z
m Z m Z m Z ddlZddgZe dddZd    d
d œd d „Zdddœdd„Zddddœdd„ZGdd„dƒZejdkr¾eejfZnefZe dejddZe säejdkrejeZeje    ejefZneejefƒZeeje    efƒZdS)é)Ú annotationsN)Ú    GeneratorÚIterableÚIterator)ÚAnyÚClassVarÚNoReturnÚTypeVarÚ TYPE_CHECKINGÚ _GenericAliasÚNDArrayÚ_T)ÚboundÚobjectÚstr©ÚobjÚreturncCsP|tkr dSt|tƒrDt|tƒsD|jdkr0|jS|j›d|j›Snt|ƒSdS)z-Helper function for `_GenericAlias.__repr__`.z...ÚbuiltinsÚ.N)ÚEllipsisÚ
isinstanceÚtypeÚ_GENERIC_ALIAS_TYPEÚ
__module__Ú __qualname__Úrepr)r©rúSd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\numpy/_typing/_generic_alias.pyÚ_to_strs
rz Iterable[Any]zGenerator[TypeVar, None, None])Úargsrccs6|D],}t|dƒr |jEdHqt|tƒr|VqdS)zzSearch for all typevars and typevar-containing objects in `args`.
 
    Helper function for `_GenericAlias.__init__`.
 
    Ú__parameters__N)Úhasattrr!rr    )r ÚirrrÚ_parse_parameters"s
 
 
r$zIterator[TypeVar])ÚaliasÚ
parametersrcsg}|jD]h}t|tƒr"tˆƒ}nFt|tƒr8t|ˆƒ}n0t|dƒrdt‡fdd„|jDƒƒ}||}n|}|     |¡q
t
|ƒ}||j t|ƒ|j ƒS)zzRecursively replace all typevars with those from `parameters`.
 
    Helper function for `_GenericAlias.__getitem__`.
 
    r!c3s|]}tˆƒVqdS©N)Únext)Ú.0Ú_©r&rrÚ    <genexpr><sz%_reconstruct_alias.<locals>.<genexpr>) Ú__args__rr    r(r Ú_reconstruct_aliasr"Útupler!ÚappendrÚ
__origin__Ú __unpacked__)r%r&r r#ÚvalueZprm_tupÚclsrr+rr./s
 
 
 
 
 
 r.c s†eZdZUdZdZeddœ‡fdd„ ƒZeddœ‡fdd    „ ƒZed
dœ‡fd d „ ƒZed dœ‡fdd„ ƒZ    eddœdd„ƒZ
dQddd ddœdd„Z eddœdd„ƒZ dddœdd „Z d!d"d#œd$d%„Zd&dœd'd(„Zd)dœ‡fd*d+„ Zd,d-d.œd/d0„Zdd-d1œd2d3„Zd4dœd5d6„Zdddd7œd8d9„Zd,d d:œd;d<„Zdd=dœd>d?„Zed@dAdBdCdDdEdFdGdHdIdJh ƒZdKedL<d4dMdNœ‡fdOdP„ Z‡ZS)Rr aA python-based backport of the `types.GenericAlias` class.
 
    E.g. for ``t = list[int]``, ``t.__origin__`` is ``list`` and
    ``t.__args__`` is ``(int,)``.
 
    See Also
    --------
    :pep:`585`
        The PEP responsible for introducing `types.GenericAlias`.
 
    )Ú __weakref__Ú_originÚ_argsÚ _parametersÚ_hashÚ_starredr)rcs tƒ d¡S)Nr6©ÚsuperÚ__getattribute__©Úself©Ú    __class__rrr1\sz_GenericAlias.__origin__ztuple[object, ...]cs tƒ d¡S)Nr7r;r>r@rrr-`sz_GenericAlias.__args__ztuple[TypeVar, ...]cs tƒ d¡S)z'Type variables in the ``GenericAlias``.r8r;r>r@rrr!dsz_GenericAlias.__parameters__Úboolcs tƒ d¡S)Nr:r;r>r@rrr2isz_GenericAlias.__unpacked__ztuple[object, ...] | NonecCsdSr'rr>rrrÚ__typing_unpacked_tuple_args__msz,_GenericAlias.__typing_unpacked_tuple_args__Fzobject | tuple[object, ...]ÚNone)Úoriginr ÚstarredrcCs6||_t|tƒr|n|f|_tt|jƒƒ|_||_dSr')r6rr/r7r$r-r8r:)r?rEr rFrrrÚ__init__tsz_GenericAlias.__init__z    type[Any]cCs|jSr'©r1r>rrrÚ__call__sz_GenericAlias.__call__r z;tuple[type[_T], tuple[type[Any], tuple[object, ...], bool]])r?rcCst|ƒ}||j|j|jffSr')rr1r-r2©r?r4rrrÚ
__reduce__ƒsz_GenericAlias.__reduce__zIterable[object]ztuple[type[Any]])ÚbasesrcCs|jfSr'rH)r?rLrrrÚ__mro_entries__Šsz_GenericAlias.__mro_entries__z    list[str]cCs$t|ƒ}tt|jƒƒ}t|j|BƒS)zImplement ``dir(self)``.)rÚsetÚdirr1ÚsortedÚ_ATTR_EXCEPTIONS)r?r4Z
dir_originrrrÚ__dir__sz_GenericAlias.__dir__ÚintcsTztƒ d¡WStk
rNt|jƒt|jƒAt|jƒA|_tƒ d¡YSXdS)zReturn ``hash(self)``.r9N)r<r=ÚAttributeErrorÚhashr1r-r2r9r>r@rrÚ__hash__“sÿþÿz_GenericAlias.__hash__rrrcCs tdƒ‚dS)z!Check if an `obj` is an instance.z9isinstance() argument 2 cannot be a parameterized genericN©Ú    TypeError)r?rrrrÚ__instancecheck__ sz_GenericAlias.__instancecheck__)r4rcCs tdƒ‚dS)zCheck if a `cls` is a subclass.z9issubclass() argument 2 cannot be a parameterized genericNrWrJrrrÚ__subclasscheck__¥sz_GenericAlias.__subclasscheck__rcCsBd dd„|jDƒ¡}t|jƒ}|jr*dnd}|›|›d|›dS)zReturn ``repr(self)``.z, css|]}t|ƒVqdSr')r)r)r#rrrr,¬sz)_GenericAlias.__repr__.<locals>.<genexpr>Ú*Úú[ú])Újoinr-rr1r2)r?r rEÚprefixrrrÚ__repr__ªs
z_GenericAlias.__repr__)r?ÚkeyrcCs†t|tƒr|n|f}t|jƒdkr2td|›ƒ‚nBt|ƒt|jƒkrTtd|›ƒ‚n t|ƒt|jƒkrttd|›ƒ‚t|ƒ}t||ƒS)zReturn ``self[key]``.rz$There are no type variables left in zToo many arguments for zToo few arguments for )rr/Úlenr!rXÚiterr.)r?rbZkey_tupZkey_iterrrrÚ __getitem__±sz_GenericAlias.__getitem__)r3rcCs:t|tƒstS|j|jko8|j|jko8|jt|d|jƒkS)zReturn ``self == value``.r2)rrÚNotImplementedr1r-r2Úgetattr)r?r3rrrÚ__eq__¿s
 
ÿÿýz_GenericAlias.__eq__zGenerator[_T, None, None]ccst|ƒ}||j|jdƒVdS)zReturn ``iter(self)``.TN)rr1r-rJrrrÚ__iter__Ësz_GenericAlias.__iter__r1r-r!rMrKÚ __reduce_ex__Ú__copy__Ú __deepcopy__r2rCrAzClassVar[frozenset[str]]rQr)Únamercs*t|ƒ}||jkrtƒ |¡St|j|ƒS)zReturn ``getattr(self, name)``.)rrQr<r=rgr1)r?rmr4r@rrr=Þs
 z_GenericAlias.__getattribute__)F)Ú__name__rrÚ__doc__Ú    __slots__Úpropertyr1r-r!r2rCrGrIrKrMrRrVrYrZrarerhriÚ    frozensetrQÚ__annotations__r=Ú __classcell__rrr@rr FsP
     
ü   õ)éé    Ú
ScalarTypeT)rÚ    covariant)Ú
__future__rÚsysÚtypesÚcollections.abcrrrÚtypingrrrr    r
ÚnumpyÚnpÚ__all__r rr$r.r Ú version_infoZ GenericAliasrZgenericrwZdtypeZ_DTypeZndarrayr rrrrÚ<module>s*    $