
    E2i              	          U d dl Zd dlZd dlZd dlZddlm	Z
 ddlmZ ddlmZ dZej        edf         ed<   ej        Z ej        d	          Z G d
 dee          ZdefdZej        rLedddej        ej        ej        ef         dej        ej        g ef                  dej        e         defdZnedddZdeddfdZ dZ!ej"        dd         dk     ree!z  Zdedej        fdZ#dS )    N   )includesLoop)__version__)new_event_looprun.__all___Tc                       e Zd ZdS )r   N)__name__
__module____qualname__     N/var/www/html/pixcura-vrs/venv/lib/python3.11/site-packages/uvloop/__init__.pyr   r      s        Dr   r   returnc                      t                      S )zReturn a new event loop.r   r   r   r   r   r      s    66Mr   loop_factorydebugmainr   r   c                    dS )5The preferred way of running a coroutine with uvloop.Nr   )r   r   r   s      r   r	   r	      s      r   c                     fd}t           j        dd         }|dk    r6t          j                    t	          d          t          j                   s"t          d                                          |            }	 t          j        |           ||	                    |           |
                     |                      	 t          |           |
                    |                                           t          |d          r'|
                    |                                           t          j        d           |                                 S # t          j        d           |                                 w xY w# 	 t          |           |
                    |                                           t          |d          r'|
                    |                                           t          j        d           |                                 w # t          j        d           |                                 w xY wxY w|dk    rmt          j                    t	          d          t          j        d||d	|5 }|                     |                      cddd           S # 1 swxY w Y   dS |d
k    sJ t          j         |            f||d	|S )r   c                     K   t          j                    } t          | t                    st	          d           d {V S )Nz)uvloop.run() uses a non-uvloop event loop)	__asyncio_get_running_loop
isinstancer   	TypeError)loopr   s    r   wrapperzrun.<locals>.wrapper)   sK       .00DdD)) M KLLL::::::r   N   )   
   z8asyncio.run() cannot be called from a running event loopz"a coroutine was expected, got {!r}shutdown_default_executor)r$      r   r$      r   )_sysversion_infor   r   RuntimeErroriscoroutine
ValueErrorformatset_event_loop	set_debugrun_until_complete_cancel_all_tasksshutdown_asyncgenshasattrr&   closeRunnerr	   )r   r   r   
run_kwargsr"   vir!   runners   `       r   r	   r	   &   sw   	 	 	 	 	 rr"== *,,8"NP P P (..  8??EE    <>>D!(...$NN5)))..wwyy99	!%d+++++D,C,C,E,EFFFt%@AA // ::<<   ,T222JJLLLL ,T222JJLLLL	!%d+++++D,C,C,E,EFFFt%@AA // ::<<   ,T222JJLLLL ,T222JJLLLL7]]*,,8"NP P P ! )    - zz'')),,- - - - - - - - - - - - - - - - - - =====		)  	  sE   AF A-E##*FIA-H(?)I(*IIJ>>KKr!   c                 b   t          j        |           }|sd S |D ]}|                                 |                     t          j        |ddi           |D ]V}|                                r|                                +|                     d|                                |d           Wd S )Nreturn_exceptionsTz1unhandled exception during asyncio.run() shutdown)message	exceptiontask)r   	all_taskscancelr2   gather	cancelledr>   call_exception_handler)r!   	to_cancelr?   s      r   r3   r3   h   s     #D))I   )<t<<     >> 	>>'''N!^^--) )   	 r   )installEventLoopPolicyr#   r$      namec                 Z   | t           vrt          d|  d          t          j        d d         dk    rt          d|  d          dd ldfd} G fd	d
t          t          d                    |t                      d<   t                      d
<   t                      |          S )Nz"module 'uvloop' has no attribute ''r#   rH   z;' (it was removed in Python 3.16, use uvloop.run() instead)r   r   c                      t           j        dd         dk    rt          j        dt          d           t          j                                 dS )zA helper function to install uvloop policy.

        This function is deprecated and will be removed in Python 3.16.
        Use `uvloop.run()` instead.
        Nr#   r(   zRuvloop.install() is deprecated in favor of uvloop.run() starting with Python 3.12.r   )
stacklevel)r*   r+   	_warningswarnDeprecationWarningr   set_event_loop_policy)rG   s   r   rF   z__getattr__.<locals>.install   sa     RaR G++N-"	    	'(9(9:::::r   c                       e Zd ZdZdefdZej        rdej        fdZ	dej
        dej        fdZ G d d j                  Zdd
Zdef fdZdej        e         dd	fdZdefdZd	S )$__getattr__.<locals>.EventLoopPolicyal  Event loop policy for uvloop.

        This class is deprecated and will be removed in Python 3.16.
        Use `uvloop.run()` instead.

        >>> import asyncio
        >>> import uvloop
        >>> asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
        >>> asyncio.get_event_loop()
        <uvloop.Loop running=False closed=False debug=False>
        r   c                     t                      S N)r   selfs    r   _loop_factoryz2__getattr__.<locals>.EventLoopPolicy._loop_factory   s    !###r   c                     d S rV   r   rW   s    r   get_child_watcherz6__getattr__.<locals>.EventLoopPolicy.get_child_watcher   s    r   watcherc                     d S rV   r   )rX   r\   s     r   set_child_watcherz6__getattr__.<locals>.EventLoopPolicy.set_child_watcher   s	     r   c                   4    e Zd ZU dZej        e         ed<   dS )+__getattr__.<locals>.EventLoopPolicy._LocalN_loop)r   r   r   ra   _typingOptional_AbstractEventLoop__annotations__r   r   r   _Localr`      s+         :>E7#$67>>>>>r   rf   Nc                 8    |                                  | _        d S rV   )rf   _localrW   s    r   __init__z-__getattr__.<locals>.EventLoopPolicy.__init__   s    ++--DKKKr   c                     | j         j        )t          d                                j        z            | j         j        S )z~Get the event loop for the current context.

            Returns an instance of EventLoop or raises an exception.
            Nz,There is no current event loop in thread %r.)rh   ra   r,   current_threadrJ   )rX   	threadings    r   get_event_loopz3__getattr__.<locals>.EventLoopPolicy.get_event_loop   sI    
 { ("B..0056  
 ;$$r   r!   c                     |:t          |t                    s%t          dt          |          j         d          || j        _        dS )zSet the event loop.Nz<loop must be an instance of AbstractEventLoop or None, not 'rL   )r   rd   r    typer   rh   ra   )rX   r!   s     r   r0   z3__getattr__.<locals>.EventLoopPolicy.set_event_loop   s^     
49K(L(L3 JJ/3 3 3   !%DKr   c                 *    |                                  S )zvCreate a new event loop.

            You must call set_event_loop() to make this the current event loop.
            )rY   rW   s    r   r   z3__getattr__.<locals>.EventLoopPolicy.new_event_loop   s    
 %%'''r   r   N)r   r   r   __doc__r   rY   rb   TYPE_CHECKINGNoReturnr[   Anyr^   localrf   ri   rd   rm   rc   r0   r   )rl   s   r   rG   rT      s<       
	 
		$4 	$ 	$ 	$ 	$   	
7+;    &{!   
	? 	? 	? 	? 	?Y_ 	? 	? 	?	( 	( 	( 	(	%$6 	% 	% 	% 	% 	% 	%		%();<		%		% 		% 		% 		%	(D 	( 	( 	( 	( 	( 	(r   rG   AbstractEventLoopPolicyrF   rq   )_deprecated_namesAttributeErrorr*   r+   rl   getattrr   globals)rJ   rF   rG   rl   s     @@r   __getattr__r|      s   $$$I$IIIJJJ		2A2	'	)	)I I I I
 
 	

 ; ; ; ; ; ;C( C( C( C( C( C( C(	455C( C( C(J #GIIi#2GII 99T?r   )$asyncior   typingrb   sysr*   warningsrO    r   
__includesr!   r   
__BaseLoop_versionr   r
   Tuplestrre   AbstractEventLooprd   TypeVarr   r   rs   	Coroutineru   rc   Callableboolr	   r3   rx   r+   r|   r   r   r   <module>r      s1                    $ $ $ $ $ $ $ $ $ $ $ $ ! ! ! ! ! ! $=sCx	  < < <0  W_T	 	 	 	 	:) 	 	 	    
  J &*D D DW[" <=D &RX&
D %D 
D D D D D #1 ? ? ? ? ?D. 4    2 3  RaR7""  Gac agk a a a a a ar   