
    -ig                     D   % S r SSKJrJrJrJrJrJr  SSKrSSK	r
SSKJr  SSKJr   " S S\5      r\" \R"                  \R"                  R$                  \
R&                  5      r\" \R*                  \R*                  R$                  \5      \" \R,                  \R,                  R$                  \5      \" \R.                  SS5      \S.r\R2                  R5                  S\R7                  5       \R9                  5       S	9S
\S\SS4S j5       r\R2                  R5                  S\R7                  5       \R9                  5       S	9S
\S\SS4S j5       r\R2                  R5                  S\R7                  5       \R9                  5       S	9S
\S\SS4S j5       r \R2                  R5                  S\R7                  5       \R9                  5       S	9S
\S\SS4S j5       r!SS jr"\RF                  \
RH                  " S5      4\RJ                  \
RL                  " S5      4\RN                  \
RL                  " S5      4\RP                  S/4S.r)\*\+\,\\   \-4   4   \.S'   \R2                  R5                  S\)R_                  5       \)R9                  5       S	9 " S S5      5       r0g)z)Test the runtime usage of `numpy.typing`.    )Any
NamedTupleUnionget_args
get_originget_type_hintsNc                   D    \ rS rSr% \\S'   \\S4   \S'   \S-  \S'   Srg)TypeTup   typ.argsNorigin )__name__
__module____qualname____firstlineno__type__annotations__tuple__static_attributes__r       R/var/www/html/venv/lib/python3.13/site-packages/numpy/typing/tests/test_runtime.pyr
   r
      s     	I
c	
4Kr   r
   r   )	ArrayLike	DTypeLikeNBitBaseNDArrayzname,tup)idsnametupreturnc                 V    UR                   UR                  p2[        U5      nXC:X  d   eg)zTest `typing.get_args`.N)r   r   r   r   r    r   refouts        r   test_get_argsr&   #   s&     ww
3-C::r   c                 V    UR                   UR                  p2[        U5      nXC:X  d   eg)zTest `typing.get_origin`.N)r   r   r   r#   s        r   test_get_originr(   +   s&     ww


S/C::r   c                 n    UR                   nSUSS4S jn[        U5      nU[        S5      S.nXE:X  d   eg)zTest `typing.get_type_hints`.ar!   Nc                     g Nr   r*   s    r   func!test_get_type_hints.<locals>.func8   s    dr   r*   r!   r   r   r   )r   r    r   r.   r%   r$   s         r   test_get_type_hintsr2   3   s<     ''C"""

CtDz
*C::r   c                 v    SU  3UR                   p2SUSS4S jn[        U5      nU[        S5      S.nXV:X  d   eg)zATest `typing.get_type_hints` with string-representation of types.znpt.r*   r!   Nc                     g r,   r   r-   s    r   r.   %test_get_type_hints_str.<locals>.funcD   s    $r   r0   r1   )r   r    typ_strr   r.   r%   r$   s          r   test_get_type_hints_strr7   ?   sD     $=#''S&&D&

CtDz
*C::r   c                  l    [         R                  5       n [        [        R                  5      nX:X  d   eg)zCTest that ``TYPES.keys()`` and ``numpy.typing.__all__`` are synced.N)TYPESkeyssetnpt__all__)r:   r$   s     r   	test_keysr>   K   s%    ::<D
ckk
C;;r      
   )_SupportsDType_SupportsArray_SupportsArrayFunc_NestedSequence	PROTOCOLSzcls,objc                   L    \ rS rSrS\\   S\SS4S jrS\\   S\SS4S jrSr	g)	TestRuntimeProtocolZ   clsobjr!   Nc                 N    [        X!5      (       d   e[        S U5      (       a   eg r,   )
isinstanceselfrI   rJ   s      r   test_isinstance#TestRuntimeProtocol.test_isinstance\   s)    #####dC(((((r   c                     U[         R                  L a  [        R                  " S5        [	        [        U5      U5      (       d   e[	        [        S 5      U5      (       a   eg )Nz<Protocols with non-method members don't support issubclass())_nptrA   pytestxfail
issubclassr   rM   s      r   test_issubclass#TestRuntimeProtocol.test_issubclass`   sR    $%%%LLN $s)S))))d4j#.....r   r   )
r   r   r   r   r   r   objectrO   rV   r   r   r   r   rG   rG   Z   s>    )49 )6 )d )/49 /6 /d /r   rG   )r!   N)1__doc__typingr   r   r   r   r   r   rS   numpynpnumpy._typing_typingrR   numpy.typingr<   r
   r   __args__ndarray
NDArrayTupr   r   r   r9   markparametrizeitemsr:   r   r&   r(   r2   r7   r>   rA   int64rB   arangerC   rD   rE   dictstrr   rX   r   valuesrG   r   r   r   <module>rk      s   /     j  S[[#++"6"6

C
 (>(>F(>(>Fb$/		 U[[]

E 7 t  F U[[]

E$ W   F U[[]

Ed  T  F U[[]

E$ W   F **BHHQK8**BIIbM:22BIIbMB,,qc2	2	4U49f,--.  I$4$4$6INN<LM/ / N/r   