Ë
    RPfl  ã            	       óØ  — 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__© ó    úI/var/www/fastapitest/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	   € ä‹6€Mr   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   øè ø€ ô ×.Ñ.Ó0ˆDÜ˜d¤DÔ)ÜÐ 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   s\  ø€ ô	ô ×Ñ˜r Ð"ˆà�‹=ô ×*Ñ*Ó,Ð8Ü"ØNóPð Pô ×(Ñ(¨Ô.Ü Ø8×?Ñ?ÀÓEóð ñ  “>ˆDð!Ü×(Ñ(¨Ô.ØÐ$Ø—N‘N 5Ô)Ø×.Ñ.©w«yÓ9ð	!Ü% dÔ+Ø×+Ñ+¨D×,CÑ,CÓ,EÔFÜ˜tÐ%@ÔAØ×/Ñ/Ø ×:Ñ:Ó<ôô ×,Ñ,¨TÔ2Ø—J‘J•Là�7Š]Ü×*Ñ*Ó,Ð8Ü"ØNóPð Pô ×!Ñ!ð Ø)Øñð ñð -ð Ø—z‘z¡'£)Ó,÷-ñ -ð ˜’=Ð �=Ü—=‘=Ù“	ðà)Øñð ñ	ð øô# ×,Ñ,¨TÔ2Ø—J‘J•Lûð	!Ü% dÔ+Ø×+Ñ+¨D×,CÑ,CÓ,EÔFÜ˜tÐ%@ÔAØ×/Ñ/Ø ×:Ñ:Ó<ôô ×,Ñ,¨TÔ2Ø—J‘J•Løô ×,Ñ,¨TÔ2Ø—J‘J•Lý÷-ð -ú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   