
    Ojw+                       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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j>                  d
k\  r	d dlm Z m!Z! nd dl"m Z m!Z! erDd 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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6 ddl7m8Z8 ddl9m:Z: ddl;m<Z<  ed      Z= edd      Z> e d      Z?e@eAz  ee@   z  eeA   z  ZBdeCd<    G d de      ZDy)     )annotationsN)ABCMetaabstractmethod)AsyncIterator	AwaitableCallable	CoroutineIterableMappingSequence)AbstractContextManager)PathLike)Signals)AddressFamily
SocketKindsocket)IOTYPE_CHECKINGAny	TypeAliasTypeVaroverload)      )TypeVarTupleUnpack)FileDescriptorLike   )CapacityLimiterEventLock	Semaphore)CancelScope)TaskInfo   )ConnectedUDPSocketConnectedUNIXDatagramSocketIPSockAddrTypeSocketListenerSocketStream	UDPSocketUNIXDatagramSocketUNIXSocketStream)Process)	TaskGroup)
TestRunnerT_RetvalT_coT)	covariantPosArgsTr   StrOrBytesPathc                     e Z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              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d;d              Zeed@d              ZeedAd              ZeedBd              Zeedd	d	 	 	 	 	 	 	 dCd              ZeedDd              Zee	 	 dE	 	 	 	 	 	 	 	 	 dFd              Zeed=d              Zee	 	 	 	 	 	 	 	 dGd              Zee	 	 	 	 	 	 	 	 dHd              Zeeddddd	dddddd
	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dId              ZeedJd              Zee	 dK	 	 	 	 	 	 	 dLd              ZeedMd              ZeedNd               ZeedNd!              Zee	 	 	 	 	 	 	 	 	 	 dOd"              Z ee!	 	 	 	 	 	 dPd#              Z"ee!	 	 	 	 	 	 dQd$              Z"ee	 	 	 	 	 	 dRd%              Z"eeddddd&	 	 	 	 	 	 	 	 	 	 	 	 	 dSd'              Z#ee	 dT	 	 	 	 	 dUd(              Z$eedVd)              Z%eedVd*              Z&eedVd+              Z'eedNd,              Z(eedWd-              Z)eedXd.              Z*eedYd/              Z+eedZd0              Z,eed[d1              Z-ee	 	 	 	 d\d2              Z.eed]d3              Z/ee	 	 	 	 d^d4              Z0eed_d5              Z1eed`d6              Z2eed=d7              Z3eedad8              Z4y)b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        k/var/www/origus_pro_usr/data/www/origus.pro/core/.venv/lib/python3.12/site-packages/anyio/abc/_eventloop.pyrunzAsyncBackend.run<           c                     y)z
        Return an object that allows other threads to run code inside the event loop.

        :return: a token object, specific to the event loop running in the current
            thread
        Nr9   r:   s    r?   current_tokenzAsyncBackend.current_tokenR   rA   rB   c                     y)zz
        Return the current value of the event loop's internal clock.

        :return: the clock value (seconds)
        Nr9   rD   s    r?   current_timezAsyncBackend.current_time\   rA   rB   c                     y)zFReturn the exception class that is raised in a task if it's cancelled.Nr9   rD   s    r?   cancelled_exception_classz&AsyncBackend.cancelled_exception_classe   rA   rB   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`.
        Nr9   rD   s    r?   
checkpointzAsyncBackend.checkpointj           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infrK   rD   s    r?   checkpoint_if_cancelledz$AsyncBackend.checkpoint_if_cancelledt   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sleeprD   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
        Nr9   )r:   delays     r?   rV   zAsyncBackend.sleep   rL   rM   F)deadlinerT   c                    y Nr9   )r:   rZ   rT   s      r?   rU   z AsyncBackend.create_cancel_scope       
 	rB   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
        Nr9   rD   s    r?   rO   z'AsyncBackend.current_effective_deadline   rA   rB   c                     y r\   r9   rD   s    r?   create_task_groupzAsyncBackend.create_task_group        	rB   c                     y r\   r9   rD   s    r?   create_eventzAsyncBackend.create_event   ra   rB   c                    y r\   r9   )r:   fast_acquires     r?   create_lockzAsyncBackend.create_lock   ra   rB   N)	max_valuere   c                    y r\   r9   )r:   initial_valuerg   re   s       r?   create_semaphorezAsyncBackend.create_semaphore   s     	rB   c                     y r\   r9   )r:   total_tokenss     r?   create_capacity_limiterz$AsyncBackend.create_capacity_limiter   ra   rB   c                   K   y wr\   r9   )r:   r;   r<   abandon_on_cancellimiters        r?   run_sync_in_worker_threadz&AsyncBackend.run_sync_in_worker_thread         	rM   c                     y r\   r9   rD   s    r?   check_cancelledzAsyncBackend.check_cancelled   ra   rB   c                     y r\   r9   r:   r;   r<   tokens       r?   run_async_from_threadz"AsyncBackend.run_async_from_thread        	rB   c                     y r\   r9   rv   s       r?   run_sync_from_threadz!AsyncBackend.run_sync_from_thread   ry   rB   r   r9   )
cwdenvstartupinfocreationflagsstart_new_sessionpass_fdsusergroupextra_groupsumaskc                  K   y wr\   r9   )r:   commandstdinstdoutstderrr}   r~   r   r   r   r   r   r   r   r   r=   s                   r?   open_processzAsyncBackend.open_process   s     * 	rM   c                     y r\   r9   )r:   workerss     r?   #setup_process_pool_exit_at_shutdownz0AsyncBackend.setup_process_pool_exit_at_shutdown  ra   rB   c                   K   y wr\   r9   )r:   hostportlocal_addresss       r?   connect_tcpzAsyncBackend.connect_tcp	       
 	rM   c                   K   y wr\   r9   )r:   paths     r?   connect_unixzAsyncBackend.connect_unix        	rM   c                     y r\   r9   r:   socks     r?   create_tcp_listenerz AsyncBackend.create_tcp_listener  ra   rB   c                     y r\   r9   r   s     r?   create_unix_listenerz!AsyncBackend.create_unix_listener  ra   rB   c                   K   y wr\   r9   )r:   familyr   remote_address
reuse_ports        r?   create_udp_socketzAsyncBackend.create_udp_socket  rr   rM   c                   K   y wr\   r9   r:   
raw_socketremote_paths      r?   create_unix_datagram_socketz(AsyncBackend.create_unix_datagram_socket*  s      !rM   c                   K   y wr\   r9   r   s      r?   r   z(AsyncBackend.create_unix_datagram_socket0  s      '*rM   c                   K   y wr\   r9   r   s      r?   r   z(AsyncBackend.create_unix_datagram_socket6  r   rM   )r   typeprotoflagsc                  K   y wr\   r9   )r:   r   r   r   r   r   r   s          r?   getaddrinfozAsyncBackend.getaddrinfo=  s     ( 	rM   c                   K   y wr\   r9   )r:   sockaddrr   s      r?   getnameinfozAsyncBackend.getnameinfoS  r   rM   c                   K   y wr\   r9   r:   objs     r?   wait_readablezAsyncBackend.wait_readableZ  r   rM   c                   K   y wr\   r9   r   s     r?   wait_writablezAsyncBackend.wait_writable_  r   rM   c                     y r\   r9   r   s     r?   notify_closingzAsyncBackend.notify_closingd  ra   rB   c                   K   y wr\   r9   r   s     r?   wrap_listener_socketz!AsyncBackend.wrap_listener_socketi  r   rM   c                   K   y wr\   r9   r   s     r?   wrap_stream_socketzAsyncBackend.wrap_stream_socketn  r   rM   c                   K   y wr\   r9   r   s     r?   wrap_unix_stream_socketz$AsyncBackend.wrap_unix_stream_sockets  r   rM   c                   K   y wr\   r9   r   s     r?   wrap_udp_socketzAsyncBackend.wrap_udp_socketx  r   rM   c                   K   y wr\   r9   r   s     r?   wrap_connected_udp_socketz&AsyncBackend.wrap_connected_udp_socket}  r   rM   c                   K   y wr\   r9   r   s     r?   wrap_unix_datagram_socketz&AsyncBackend.wrap_unix_datagram_socket  r   rM   c                   K   y wr\   r9   r   s     r?   #wrap_connected_unix_datagram_socketz0AsyncBackend.wrap_connected_unix_datagram_socket  r   rM   c                     y r\   r9   rD   s    r?   current_default_thread_limiterz+AsyncBackend.current_default_thread_limiter  ra   rB   c                     y r\   r9   )r:   signalss     r?   open_signal_receiverz!AsyncBackend.open_signal_receiver  r]   rB   c                     y r\   r9   rD   s    r?   get_current_taskzAsyncBackend.get_current_task  ra   rB   c                     y r\   r9   rD   s    r?   get_running_taskszAsyncBackend.get_running_tasks  ra   rB   c                   K   y wr\   r9   rD   s    r?   wait_all_tasks_blockedz#AsyncBackend.wait_all_tasks_blocked  r   rM   c                     y r\   r9   )r:   r>   s     r?   create_test_runnerzAsyncBackend.create_test_runner  ra   rB   )
r;   z1Callable[[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)rY   r   r   r   )rZ   r   rT   boolr   r#   )r   r/   )r   r    )re   r   r   r!   )ri   intrg   z
int | Nonere   r   r   r"   )rl   r   r   r   )FN)
r;   &Callable[[Unpack[PosArgsT]], T_Retval]r<   r   ro   r   rp   zCapacityLimiter | Noner   r1   )r;   z7Callable[[Unpack[PosArgsT]], Coroutine[Any, Any, T_co]]r<   r   rw   r   r   r2   )r;   r   r<   r   rw   r   r   r1   ) r   z)StrOrBytesPath | Sequence[StrOrBytesPath]r   int | IO[Any] | Noner   r   r   r   r}   zStrOrBytesPath | Noner~   zMapping[str, str] | Noner   r   r   r   r   r   r   zSequence[int]r   str | int | Noner   r   r   zIterable[str | int] | Noner   r   r=   r   r   r.   )r   zset[Process]r   r   r\   )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   r   r   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   )5__name__
__module____qualname__classmethodr   r@   rE   rG   rI   rK   rR   rW   rV   rP   rQ   rU   rO   r`   rc   rf   rj   rm   rq   rt   rx   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   r9   rB   r?   r7   r7   ;   s   ? & 	
   
  (       U  U    	# 	# 	 	    "&((548	  
 
  
          
 !%" 	
  
      
 #(*.4 &  	
 ( 
      E & 	
 
   4 & 	
 
    &*(,"'"$!%"&37!: $	
 % % # &          1  !" #$ 
%  *    JN!2G	  
           - .	
  
(   !!.2!	!  ! **.9*	$*  * .@	9  
  '(!"  
 $   
  ( 45%.1	  
                            	$  
    	7  
            rB   r7   )	metaclass)E
__future__r   rP   sysabcr   r   collections.abcr   r   r   r	   r
   r   r   
contextlibr   osr   signalr   r   r   r   typingr   r   r   r   r   r   version_infor   r   typing_extensions	_typeshedr   _core._synchronizationr   r    r!   r"   _core._tasksr#   _core._testingr$   _socketsr&   r'   r(   r)   r*   r+   r,   r-   _subprocessesr.   _tasksr/   _testingr0   r1   r2   r4   r   bytesr5   __annotations__r7   r9   rB   r?   <module>r      s    "  
 '   .   4 4  w++6,PP*)	 	 	 '!$:v&
#%K(3-7(5/I	 IqW qrB   