
    ,hl              	          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dlmZ dZ ej(                  d      Z G d	 d
eej,                        ZdefdZddZej2                  r^edddej4                  ej6                  ej6                  ef   dej8                  ej:                  g ef      dej8                  e   defdZnedddZdej,                  ddfdZ  G d de
      Z!y)    N)BaseDefaultEventLoopPolicy   )includesLoop)__version__)new_event_loopinstallEventLoopPolicy_Tc                       e Zd Zy)r   N)__name__
__module____qualname__     Q/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/uvloop/__init__.pyr   r      s    r   r   returnc                      t               S )zReturn a new event loop.r   r   r   r   r	   r	      s	    6Mr   c                      t         j                  dd dk\  rt        j                  dt        d       t        j                  t                      y)z+A helper function to install uvloop policy.N         zRuvloop.install() is deprecated in favor of uvloop.run() starting with Python 3.12.r   )
stacklevel)_sysversion_info	_warningswarnDeprecationWarning	__asyncioset_event_loop_policyr   r   r   r   r
   r
      sA    !')		
 ##O$56r   loop_factorydebugmainr$   r%   c                     y)5The preferred way of running a coroutine with uvloop.Nr   )r&   r$   r%   s      r   runr)   )   s    r   c                      fd}t         j                  dd }|dk  rt        j                         t	        d      t        j
                         st        dj                                |       }	 t        j                  |       ||j                  |       |j                   |             	 t        |       |j                  |j                                t        |d      r|j                  |j                                t        j                  d       |j                          S |dk(  rWt        j                         t	        d      t        j                   d||d	|5 }|j#                   |             cddd       S |d
k\  sJ t        j"                   |       f||d	|S # t        j                  d       |j                          w xY w# 	 t        |       |j                  |j                                t        |d      r|j                  |j                                t        j                  d       |j                          w # t        j                  d       |j                          w xY wxY w# 1 sw Y   yxY w)r(   c                     K   t        j                         } t        | t              st	        d       d {   S 7 w)Nz)uvloop.run() uses a non-uvloop event loop)r!   _get_running_loop
isinstancer   	TypeError)loopr&   s    r   wrapperzrun.<locals>.wrapper6   s7      ..0DdD) KLL::s   5?=?Nr   )r   
   z8asyncio.run() cannot be called from a running event loopz"a coroutine was expected, got {!r}shutdown_default_executor)r      r#   r   r   )r   r   r!   r,   RuntimeErroriscoroutine
ValueErrorformatset_event_loop	set_debugrun_until_complete_cancel_all_tasksshutdown_asyncgenshasattrr2   closeRunnerr)   )r&   r$   r%   
run_kwargsr0   vir/   runners   `       r   r)   r)   3   sZ   	 r"= **,8"NP P ((. 8??E   >D!((.$NN5)..wy9	!%d+++D,C,C,EFt%@A// ::< ,,T2JJL7]**,8"NP P !! )  - zz'),- - = ==	) 	 # ,,T2JJL	!%d+++D,C,C,EFt%@A// ::< ,,T2JJL ,,T2JJL- -s>   6=G 4AF0+J0'GJAI1&J'I>>JJr/   c                 B   t        j                  |       }|sy |D ]  }|j                           | j                  t        j                  |ddi       |D ]G  }|j                         r|j                         %| j                  d|j                         |d       I y )Nreturn_exceptionsTz1unhandled exception during asyncio.run() shutdown)message	exceptiontask)r!   	all_taskscancelr:   gather	cancelledrF   call_exception_handler)r/   	to_cancelrG   s      r   r;   r;   u   s     ##D)I  	)<t<  >>>>'''N!^^-) 	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yy)r   a  Event loop policy.

    The preferred way to make your application use uvloop:

    >>> 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_factoryzEventLoopPolicy._loop_factory   s    r   c                      y rP   r   rQ   s    r   get_child_watcherz!EventLoopPolicy.get_child_watcher   s    r   watcherc                      y rP   r   )rR   rV   s     r   set_child_watcherz!EventLoopPolicy.set_child_watcher   s     r   N)r   r   r   __doc__r   rS   _typingTYPE_CHECKINGNoReturnrU   AnyrX   r   r   r   r   r      sT    	 t   
	w'7'7 		";;		 r   r   )r   N)"asyncior!   typingrZ   sysr   warningsr   asyncio.eventsr   __BasePolicy r   
__includesr/   r   
__BaseLoop_versionr   __all__TypeVarr   AbstractEventLoopr	   r
   r[   	Coroutiner]   OptionalCallableboolr)   r;   r   r   r   r   <module>ro      s       E $ $ ! ; W__T	:y22 	 
	7  &*DW[[" <=D &&RX&
D %D 
D #1 ?DI77 D 2l r   