Ë
    KU hé)  ã                  ó  — U d dl mZ d dlZd dlZd dlmZmZ d dlmZm	Z	m
Z
mZ d dlmZ d dlmZ d dlmZ d dlmZmZmZ d d	lmZmZmZmZmZmZ ej8                  d
k\  r	d dlmZmZ nd dlmZmZ ej8                  dk\  rd dlm Z  nd dlm Z  erJd dl!m"Z" ddl#m$Z$m%Z%m&Z&m'Z' ddl(m)Z) ddl*m+Z+ ddl,m-Z- ddl.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6 ddl7m8Z8 ddl9m:Z: ddl;m<Z<  ed«      Z= ed«      Z>ee?e@ddf   ZAdeBd<    G d„ d e¬!«      ZCy)"é    )ÚannotationsN)ÚABCMetaÚabstractmethod)ÚAsyncIteratorÚ	AwaitableÚCallableÚSequence)ÚAbstractContextManager)ÚPathLike)ÚSignals)ÚAddressFamilyÚ
SocketKindÚsocket)ÚIOÚTYPE_CHECKINGÚAnyÚTypeVarÚUnionÚoverload)é   é   )ÚTypeVarTupleÚUnpack)r   é
   )Ú	TypeAlias)ÚFileDescriptorLikeé   )ÚCapacityLimiterÚEventÚLockÚ	Semaphore)ÚCancelScope)ÚTaskInfo)ÚBlockingPortalé   )ÚConnectedUDPSocketÚConnectedUNIXDatagramSocketÚIPSockAddrTypeÚSocketListenerÚSocketStreamÚ	UDPSocketÚUNIXDatagramSocketÚUNIXSocketStream)ÚProcess)Ú	TaskGroup)Ú
TestRunnerÚT_RetvalÚPosArgsTzPathLike[str]zPathLike[bytes]r   ÚStrOrBytesPathc                  óf  — e Zd Zee	 	 	 	 	 	 	 	 	 	 d7d„«       «       Zeed8d„«       «       Zeed9d„«       «       Zeed:d„«       «       Zeed;d„«       «       Z	ed;d„«       Z
ed;d„«       Zeed<d„«       «       Zeeej                  d	d
œ	 	 	 	 	 d=d„«       «       Zeed9d„«       «       Zeed>d„«       «       Zeed?d„«       «       Zeed@d„«       «       Zeedd	dœ	 	 	 	 	 	 	 dAd„«       «       ZeedBd„«       «       Zee	 	 dC	 	 	 	 	 	 	 	 	 dDd„«       «       Zeed;d„«       «       Zee	 	 	 	 	 	 	 	 dEd„«       «       Zee	 	 	 	 	 	 	 	 dFd„«       «       ZeedGd„«       «       Zee	 	 	 	 	 	 	 	 	 	 	 	 dHd„«       «       ZeedId„«       «       Zee	 dJ	 	 	 	 	 	 	 dKd„«       «       ZeedLd„«       «       ZeedMd„«       «       ZeedMd„«       «       Z ee	 	 	 	 	 	 	 	 	 	 dNd„«       «       Z!ee"	 	 	 	 	 	 dOd „«       «       Z#ee"	 	 	 	 	 	 dPd!„«       «       Z#ee	 	 	 	 	 	 dQd"„«       «       Z#eed#d#d#d#d$œ	 	 	 	 	 	 	 	 	 	 	 	 	 dRd%„«       «       Z$ee	 dS	 	 	 	 	 dTd&„«       «       Z%eedUd'„«       «       Z&eedUd(„«       «       Z'eedUd)„«       «       Z(eedMd*„«       «       Z)eedVd+„«       «       Z*eedWd,„«       «       Z+eedXd-„«       «       Z,eedYd.„«       «       Z-eedZd/„«       «       Z.ee	 	 	 	 d[d0„«       «       Z/eed\d1„«       «       Z0ee	 	 	 	 d]d2„«       «       Z1eed^d3„«       «       Z2eed_d4„«       «       Z3eed;d5„«       «       Z4eed`d6„«       «       Z5y)aÚAsyncBackendc                 ó   — y)aÕ  
        Run the given coroutine function in an asynchronous event loop.

        The current thread must not be already running an event loop.

        :param func: a coroutine function
        :param args: positional arguments to ``func``
        :param kwargs: positional arguments to ``func``
        :param options: keyword arguments to call the backend ``run()`` implementation
            with
        :return: the return value of the coroutine function
        N© )ÚclsÚfuncÚargsÚkwargsÚoptionss        úL/var/www/timesheet/venv/lib/python3.12/site-packages/anyio/abc/_eventloop.pyÚrunzAsyncBackend.run9   ó   � ó    c                 ó   — y)z

        :return:
        Nr7   ©r8   s    r=   Úcurrent_tokenzAsyncBackend.current_tokenO   r?   r@   c                 ó   — y)zz
        Return the current value of the event loop's internal clock.

        :return: the clock value (seconds)
        Nr7   rB   s    r=   Úcurrent_timezAsyncBackend.current_timeW   r?   r@   c                 ó   — y)zFReturn the exception class that is raised in a task if it's cancelled.Nr7   rB   s    r=   Úcancelled_exception_classz&AsyncBackend.cancelled_exception_class`   r?   r@   c              ƒ  ó   K  — y­w)zä
        Check if the task has been cancelled, and allow rescheduling of other tasks.

        This is effectively the same as running :meth:`checkpoint_if_cancelled` and then
        :meth:`cancel_shielded_checkpoint`.
        Nr7   rB   s    r=   Ú
checkpointzAsyncBackend.checkpointe   ó   è ø� ùó   ‚c              ƒ  ó†   K  — | j                  «       t        j                   k(  r| j                  «       ƒ d{  –—†  yy7 Œ­w)z¾
        Check if the current task group has been cancelled.

        This will check if the task has been cancelled, but will not allow other tasks
        to be scheduled if not.

        N)Úcurrent_effective_deadlineÚmathÚinfrI   rB   s    r=   Úcheckpoint_if_cancelledz$AsyncBackend.checkpoint_if_cancelledo   s7   è ø€ ð ×)Ñ)Ó+´·±¨yÒ8Ø—.‘.Ó"×"Ñ"ð 9Ø"ús   ‚6A¸?¹Ac              ƒ  ó�   K  — | j                  d¬«      5  | j                  d«      ƒ d{  –—†  ddd«       y7 Œ# 1 sw Y   yxY w­w)zà
        Allow the rescheduling of other tasks.

        This will give other tasks the opportunity to run, but without checking if the
        current task group has been cancelled, unlike with :meth:`checkpoint`.

        T)Úshieldr   N)Úcreate_cancel_scopeÚsleeprB   s    r=   Úcancel_shielded_checkpointz'AsyncBackend.cancel_shielded_checkpoint{   sG   è ø€ ð ×$Ñ$¨DÐ$Ó1ñ 	Ø—)‘)˜A“,×Ð÷	ð 	Øø÷	ð 	üs$   ‚A•:ª8«:¯	A¸:ºA¿Ac              ƒ  ó   K  — y­w)zt
        Pause the current task for the specified duration.

        :param delay: the duration, in seconds
        Nr7   )r8   Údelays     r=   rT   zAsyncBackend.sleep‡   rJ   rK   F)ÚdeadlinerR   c                ó   — y ©Nr7   )r8   rX   rR   s      r=   rS   z AsyncBackend.create_cancel_scope�   ó   € ð
 	r@   c                 ó   — y)aQ  
        Return the nearest deadline among all the cancel scopes effective for the
        current task.

        :return:
            - a clock value from the event loop's internal clock
            - ``inf`` if there is no deadline in effect
            - ``-inf`` if the current scope has been cancelled
        :rtype: float
        Nr7   rB   s    r=   rM   z'AsyncBackend.current_effective_deadline—   r?   r@   c                 ó   — y rZ   r7   rB   s    r=   Úcreate_task_groupzAsyncBackend.create_task_group¥   ó   € ð 	r@   c                 ó   — y rZ   r7   rB   s    r=   Úcreate_eventzAsyncBackend.create_eventª   r_   r@   c                ó   — y rZ   r7   )r8   Úfast_acquires     r=   Úcreate_lockzAsyncBackend.create_lock¯   r_   r@   N)Ú	max_valuerc   c                ó   — y rZ   r7   )r8   Úinitial_valuere   rc   s       r=   Úcreate_semaphorezAsyncBackend.create_semaphore´   s   € ð 	r@   c                 ó   — y rZ   r7   )r8   Útotal_tokenss     r=   Úcreate_capacity_limiterz$AsyncBackend.create_capacity_limiter¿   r_   r@   c              ƒ  ó   K  — y ­wrZ   r7   )r8   r9   r:   Úabandon_on_cancelÚlimiters        r=   Úrun_sync_in_worker_threadz&AsyncBackend.run_sync_in_worker_threadÄ   ó   è ø€ ð 	ùrK   c                 ó   — y rZ   r7   rB   s    r=   Úcheck_cancelledzAsyncBackend.check_cancelledÏ   r_   r@   c                 ó   — y rZ   r7   ©r8   r9   r:   Útokens       r=   Úrun_async_from_threadz"AsyncBackend.run_async_from_threadÔ   ó   € ð 	r@   c                 ó   — y rZ   r7   rt   s       r=   Úrun_sync_from_threadz!AsyncBackend.run_sync_from_threadÞ   rw   r@   c                 ó   — y rZ   r7   rB   s    r=   Úcreate_blocking_portalz#AsyncBackend.create_blocking_portalè   r_   r@   c             ‹  ó   K  — y ­wrZ   r7   )r8   ÚcommandÚstdinÚstdoutÚstderrr;   s         r=   Úopen_processzAsyncBackend.open_processí   s   è ø€ ð 	ùrK   c                 ó   — y rZ   r7   )r8   Úworkerss     r=   Ú#setup_process_pool_exit_at_shutdownz0AsyncBackend.setup_process_pool_exit_at_shutdownú   r_   r@   c              ƒ  ó   K  — y ­wrZ   r7   )r8   ÚhostÚportÚlocal_addresss       r=   Úconnect_tcpzAsyncBackend.connect_tcpÿ   ó   è ø€ ð
 	ùrK   c              ƒ  ó   K  — y ­wrZ   r7   )r8   Úpaths     r=   Úconnect_unixzAsyncBackend.connect_unix  ó   è ø€ ð 	ùrK   c                 ó   — y rZ   r7   ©r8   Úsocks     r=   Úcreate_tcp_listenerz AsyncBackend.create_tcp_listener  r_   r@   c                 ó   — y rZ   r7   r�   s     r=   Úcreate_unix_listenerz!AsyncBackend.create_unix_listener  r_   r@   c              ƒ  ó   K  — y ­wrZ   r7   )r8   Úfamilyrˆ   Úremote_addressÚ
reuse_ports        r=   Úcreate_udp_socketzAsyncBackend.create_udp_socket  rp   rK   c              ƒ  ó   K  — y ­wrZ   r7   ©r8   Ú
raw_socketÚremote_paths      r=   Úcreate_unix_datagram_socketz(AsyncBackend.create_unix_datagram_socket   s   è ø€ ð !ùrK   c              ƒ  ó   K  — y ­wrZ   r7   r›   s      r=   rž   z(AsyncBackend.create_unix_datagram_socket&  s   è ø€ ð '*ùrK   c              ƒ  ó   K  — y ­wrZ   r7   r›   s      r=   rž   z(AsyncBackend.create_unix_datagram_socket,  rŠ   rK   r   )r–   ÚtypeÚprotoÚflagsc             ƒ  ó   K  — y ­wrZ   r7   )r8   r†   r‡   r–   r¡   r¢   r£   s          r=   ÚgetaddrinfozAsyncBackend.getaddrinfo3  s   è ø€ ð( 	ùrK   c              ƒ  ó   K  — y ­wrZ   r7   )r8   Úsockaddrr£   s      r=   ÚgetnameinfozAsyncBackend.getnameinfoI  rŠ   rK   c              ƒ  ó   K  — y ­wrZ   r7   ©r8   Úobjs     r=   Úwait_readablezAsyncBackend.wait_readableP  rŽ   rK   c              ƒ  ó   K  — y ­wrZ   r7   rª   s     r=   Úwait_writablezAsyncBackend.wait_writableU  rŽ   rK   c                 ó   — y rZ   r7   rª   s     r=   Únotify_closingzAsyncBackend.notify_closingZ  r_   r@   c              ƒ  ó   K  — y ­wrZ   r7   r�   s     r=   Úwrap_listener_socketz!AsyncBackend.wrap_listener_socket_  rŽ   rK   c              ƒ  ó   K  — y ­wrZ   r7   r�   s     r=   Úwrap_stream_socketzAsyncBackend.wrap_stream_socketd  rŽ   rK   c              ƒ  ó   K  — y ­wrZ   r7   r�   s     r=   Úwrap_unix_stream_socketz$AsyncBackend.wrap_unix_stream_socketi  rŽ   rK   c              ƒ  ó   K  — y ­wrZ   r7   r�   s     r=   Úwrap_udp_socketzAsyncBackend.wrap_udp_socketn  rŽ   rK   c              ƒ  ó   K  — y ­wrZ   r7   r�   s     r=   Úwrap_connected_udp_socketz&AsyncBackend.wrap_connected_udp_sockets  rŽ   rK   c              ƒ  ó   K  — y ­wrZ   r7   r�   s     r=   Úwrap_unix_datagram_socketz&AsyncBackend.wrap_unix_datagram_socketx  rŽ   rK   c              ƒ  ó   K  — y ­wrZ   r7   r�   s     r=   Ú#wrap_connected_unix_datagram_socketz0AsyncBackend.wrap_connected_unix_datagram_socket}  rŠ   rK   c                 ó   — y rZ   r7   rB   s    r=   Úcurrent_default_thread_limiterz+AsyncBackend.current_default_thread_limiter„  r_   r@   c                 ó   — y rZ   r7   )r8   Úsignalss     r=   Úopen_signal_receiverz!AsyncBackend.open_signal_receiver‰  r[   r@   c                 ó   — y rZ   r7   rB   s    r=   Úget_current_taskzAsyncBackend.get_current_task�  r_   r@   c                 ó   — y rZ   r7   rB   s    r=   Úget_running_taskszAsyncBackend.get_running_tasks•  r_   r@   c              ƒ  ó   K  — y ­wrZ   r7   rB   s    r=   Úwait_all_tasks_blockedz#AsyncBackend.wait_all_tasks_blockedš  rŽ   rK   c                 ó   — y rZ   r7   )r8   r<   s     r=   Úcreate_test_runnerzAsyncBackend.create_test_runnerŸ  r_   r@   )
r9   ú1Callable[[Unpack[PosArgsT]], Awaitable[T_Retval]]r:   útuple[Unpack[PosArgsT]]r;   údict[str, Any]r<   rÎ   Úreturnr1   )rÏ   Úobject)rÏ   Úfloat)rÏ   ztype[BaseException])rÏ   ÚNone)rW   rÑ   rÏ   rÒ   )rX   rÑ   rR   ÚboolrÏ   r"   )rÏ   r/   )rÏ   r   )rc   rÓ   rÏ   r    )rg   Úintre   z
int | Nonerc   rÓ   rÏ   r!   )rj   rÑ   rÏ   r   )FN)
r9   ú&Callable[[Unpack[PosArgsT]], T_Retval]r:   rÍ   rm   rÓ   rn   zCapacityLimiter | NonerÏ   r1   )r9   rÌ   r:   rÍ   ru   rÐ   rÏ   r1   )r9   rÕ   r:   rÍ   ru   rÐ   rÏ   r1   )rÏ   r$   )r}   z)StrOrBytesPath | Sequence[StrOrBytesPath]r~   úint | IO[Any] | Noner   rÖ   r€   rÖ   r;   r   rÏ   r.   )rƒ   zset[Process]rÏ   rÒ   rZ   )r†   Ústrr‡   rÔ   rˆ   úIPSockAddrType | NonerÏ   r*   )rŒ   ústr | bytesrÏ   r-   )r‘   r   rÏ   r)   )
r–   r   rˆ   rØ   r—   rØ   r˜   rÓ   rÏ   zUDPSocket | ConnectedUDPSocket)rœ   r   r�   rÒ   rÏ   r,   )rœ   r   r�   rÙ   rÏ   r'   )rœ   r   r�   zstr | bytes | NonerÏ   z0UNIXDatagramSocket | ConnectedUNIXDatagramSocket)r†   zbytes | str | Noner‡   zstr | int | Noner–   zint | AddressFamilyr¡   zint | SocketKindr¢   rÔ   r£   rÔ   rÏ   zuSequence[tuple[AddressFamily, SocketKind, int, str, tuple[str, int] | tuple[str, int, int, int] | tuple[int, bytes]]])r   )r§   r(   r£   rÔ   rÏ   ztuple[str, str])r«   r   rÏ   rÒ   )r‘   r   rÏ   r*   )r‘   r   rÏ   r-   )r‘   r   rÏ   r+   )r‘   r   rÏ   r&   )r‘   r   rÏ   r,   )r‘   r   rÏ   r'   )rÏ   r   )rÂ   r   rÏ   z.AbstractContextManager[AsyncIterator[Signals]])rÏ   r#   )rÏ   zSequence[TaskInfo])r<   rÎ   rÏ   r0   )6Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   r>   rC   rE   rG   rI   rP   rU   rT   rN   rO   rS   rM   r^   ra   rd   rh   rk   ro   rr   rv   ry   r{   r�   r„   r‰   r�   r’   r”   r™   r   rž   r¥   r¨   r¬   r®   r°   r²   r´   r¶   r¸   rº   r¼   r¾   rÀ   rÃ   rÅ   rÇ   rÉ   rË   r7   r@   r=   r5   r5   8   s—  „ ØØðà?ðð &ðð ð	ð
  ðð 
òó ó ðð( Øòó ó ðð Øòó ó ðð ØòUó ó ðUð Øòó ó ðð ò	#ó ð	#ð ò	ó ð	ð Øòó ó ðð Øà"&§(¡(¸5ñØðØ48ðà	òó ó ðð
 Øò
ó ó ð
ð Øòó ó ðð Øòó ó ðð Øòó ó ðð Øð
 !%Ø"ñàðð ð	ð
 ðð 
òó ó ðð Øòó ó ðð Øð
 #(Ø*.ðà4ðð &ðð  ð	ð
 (ðð 
òó ó ðð Øòó ó ðð Øðà?ðð &ðð ð	ð
 
òó ó ðð Øðà4ðð &ðð ð	ð
 
òó ó ðð Øòó ó ðð Øð	à:ð	ð $ð		ð
 %ð	ð %ð	ð ð	ð 
ò	ó ó ð	ð Øòó ó ðð ØàJNðØðØ!ðØ2Gðà	òó ó ðð
 Øòó ó ðð Øòó ó ðð Øòó ó ðð Øðàðð -ðð .ð	ð
 ðð 
(òó ó ðð Øð!Øð!Ø.2ð!à	ò!ó ó ð!ð Øð*Øð*Ø.9ð*à	$ò*ó ó ð*ð ØðØðØ.@ðà	9òó ó ðð
 Øð '(Ø!"ØØñà ðð ðð
 $ðð ðð ðð ðð
òó ó ðð( Øà45ðØ%ðØ.1ðà	òó ó ðð
 Øòó ó ðð Øòó ó ðð Øòó ó ðð Øòó ó ðð Øòó ó ðð Øòó ó ðð Øòó ó ðð Øòó ó ðð Øòó ó ðð ØðØðà	$òó ó ðð
 Øòó ó ðð ØðØðà	7òó ó ðð
 Øòó ó ðð Øòó ó ðð Øòó ó ðð Øòó ó ñr@   r5   )Ú	metaclass)DÚ
__future__r   rN   ÚsysÚabcr   r   Úcollections.abcr   r   r   r	   Ú
contextlibr
   Úosr   Úsignalr   r   r   r   Útypingr   r   r   r   r   r   Úversion_infor   r   Útyping_extensionsr   Ú	_typeshedr   Ú_core._synchronizationr   r   r    r!   Ú_core._tasksr"   Ú_core._testingr#   Úfrom_threadr$   Ú_socketsr&   r'   r(   r)   r*   r+   r,   r-   Ú_subprocessesr.   Ú_tasksr/   Ú_testingr0   r1   r2   r×   Úbytesr3   Ú__annotations__r5   r7   r@   r=   ú<module>rô      sÇ   ðÞ "ã Û 
ß 'ß HÓ HÝ -Ý Ý ß 4Ñ 4÷÷ ð ×Ñ�wÒß+Ð+ç6à×Ñ�wÒÞ å+áÝ,çPÓPÝ*Ý)Ý,÷	÷ 	ó 	õ 'Ý!Ý$á�:Ó€Ù˜
Ó#€Ø! # u¨oÐ?PÐ"PÑQ€�	Ó Qôj˜Wö jr@   