
    zh|              	         U d dl mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ dZdZ	d>d	Z
erd d
lZd dlmZ d dlmZ d dlmZ d dlmZ nBd d
lZej&                  dk\  rd dlmZ n( e
       rd dlmZ nd dlmZ d
ddd	 	 	 	 	 	 	 	 	 	 	 d?dZ G d de      Z edd      Z edde      Z edd      Z G d dee         Z G d dee         Z G d  d!ee   ee   eeef         Z ed"de      Z G d# d$ee         Z ed%eeef   dd&'      Z ed(eeef   deeef   )      Z  G d* d+ee         Z! G d, d-ee          Z" G d. d/e!e   e"e    eee f         Z#d0Z$d1e%d2<   	  ed3d      Z& ed4de$      Z' G d5 d6ee&         Z( G d7 d8ee'         Z) G d9 d:e(e&   e)e'   ee&e'f         Z* ed;      Z+ G d< d=ee+         Z,y
)@    )annotations)TYPE_CHECKING)Any)Iterable)Mapping)Protocol)   r	   r   typing_extensionsc                 r    ddl m}  ddlm} ddlm}  |t              r | | t                    t        k\  S y)Nr   )version)	find_spec)parse_versionF)importlib.metadatar   importlib.utilr   narwhals.utilsr   _TYPING_EXTENSIONS_MIN_TYPING_EXTENSIONS)r   r   r   s      Q/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/narwhals/_translate.py_typing_extensions_has_pep_696r      s.    *(,#$W%789=SSS    N)Self)	TypeAlias)TypeIs)TypeVar)      Fbound	covariantcontravariantc               $    t        | g||||dS )Nr   )_TypeVar)namer   r   r    constraintskwdss         r   r   r   *   s,      #+ r   c                      e Zd ZdddZy)ArrowStreamExportableNc                     y N )selfrequested_schemas     r   __arrow_c_stream__z(ArrowStreamExportable.__arrow_c_stream__<       r   r)   )r,   zobject | Nonereturnobject)__name__
__module____qualname__r-   r*   r   r   r'   r'   ;   s    Wr   r'   ToNumpyT_coT)r   FromNumpyDT_contra)r    defaultFromNumpyT_contra)r    c                      e Zd ZddZy)ToNumpyc                     y r)   r*   r+   argsr%   s      r   to_numpyzToNumpy.to_numpyG   r.   r   N)r<   r   r%   r   r/   r4   r1   r2   r3   r=   r*   r   r   r9   r9   F       Cr   r9   c                      e Zd Zedd       Zy)	FromNumpyc                     y r)   r*   clsdatar<   r%   s       r   
from_numpyzFromNumpy.from_numpyK   s    SVr   N)rE   r7   r<   r   r%   r   r/   r   )r1   r2   r3   classmethodrF   r*   r   r   rA   rA   J   s    V Vr   rA   c                      e Zd ZddZy)NumpyConvertiblec                    y r)   r*   )r+   dtypecopys      r   r=   zNumpyConvertible.to_numpyT   r.   r   N)rK   r   rL   zbool | Noner/   r4   r>   r*   r   r   rI   rI   O   s    
 Mr   rI   FromIterableT_contrac                  .    e Zd Ze	 	 	 	 	 	 	 	 dd       Zy)FromIterablec                     y r)   r*   rC   s       r   from_iterablezFromIterable.from_iterable[   s     r   N)rE   zIterable[FromIterableT_contra]r<   r   r%   r   r/   r   )r1   r2   r3   rG   rQ   r*   r   r   rO   rO   Z   s4    1:=GJ	 r   rO   ToDictDT_cozdict[str, Any])r   r   r6   FromDictDT_contra)r   r    r6   c                      e Zd ZddZy)ToDictc                     y r)   r*   r;   s      r   to_dictzToDict.to_dictm   r.   r   N)r<   r   r%   r   r/   rR   )r1   r2   r3   rW   r*   r   r   rU   rU   l   s    Br   rU   c                      e Zd Zedd       Zy)FromDictc                     y r)   r*   rC   s       r   	from_dictzFromDict.from_dictq   s    RUr   N)rE   rS   r<   r   r%   r   r/   r   )r1   r2   r3   rG   r[   r*   r   r   rY   rY   p   s    U Ur   rY   c                      e Zd Zy)DictConvertibleNr1   r2   r3   r*   r   r   r]   r]   u        r   r]   z ArrowStreamExportable | pa.Tabler   IntoArrowTableToArrowT_coFromArrowDT_contrac                      e Zd ZddZy)ToArrowc                     y r)   r*   r;   s      r   to_arrowzToArrow.to_arrow   r.   r   N)r<   r   r%   r   r/   ra   )r1   r2   r3   rf   r*   r   r   rd   rd      r?   r   rd   c                      e Zd Zedd       Zy)	FromArrowc                     y r)   r*   rC   s       r   
from_arrowzFromArrow.from_arrow   s    TWr   N)rE   rb   r<   r   r%   r   r/   r   )r1   r2   r3   rG   rj   r*   r   r   rh   rh      s    W Wr   rh   c                      e Zd Zy)ArrowConvertibleNr^   r*   r   r   rl   rl      r_   r   rl   FromNativeTc                  0    e Zd Zedd       Zedd       Zy)
FromNativec                     y r)   r*   rC   s       r   from_nativezFromNative.from_native   s    NQr   c                    y r)   r*   )objs    r   
_is_nativezFromNative._is_native   s    FIr   N)rE   rm   r<   r   r%   r   r/   r   )rs   zFromNativeT | Anyr/   zTypeIs[FromNativeT])r1   r2   r3   rG   rq   staticmethodrt   r*   r   r   ro   ro      s    Q QI Ir   ro   )r/   bool)r#   strr$   r   r   z
Any | Noner   rv   r    rv   r%   r   )-
__future__r   typingr   r   r   r   r   r   r   r   pyarrowpar
   r   r   r   r   sysversion_infor"   r'   r4   r5   r7   r9   rA   rI   rM   rO   rw   rR   rS   rU   rY   r]   r`   __annotations__ra   rb   rd   rh   rl   rm   ro   r*   r   r   <module>r      s   "        (  &+() 
7""	'	)-.
 !%#"'			 	 		
  	 	"XH X mt4k  /tD Dh{# DW*+ W
MK ![,,-M 5TSVW 801  c*dDT 
#s(
CH	 CXk" CVx)* V

;[++, ?	 >
 mt4n 
Dh{# DX+, X
K ![,,- m$J+& Jr   