o
    ÿ»>hõ  ã                   @   sh   d dl mZ d dlmZmZ eZG dd„ deƒZdZda	dd„ Z
d	d
„ Zdd„ Zd dlmZ eeƒ dS )é    )Ú__version__)ÚIFailedFutureÚILoggerc                   @   s   e Zd ZdZdZdS )Ú_Configa¡  
    This holds all valid configuration options, accessed as
    class-level variables. For example, if you were using asyncio:

    .. sourcecode:: python

        txaio.config.loop = asyncio.get_event_loop()

    ``loop`` is populated automatically (while importing one of the
    framework-specific libraries) but can be changed before any call
    into this library. Currently, it's only used by :meth:`call_later`
    If using asyncio, you must set this to an event-loop (by default,
    we use asyncio.get_event_loop). If using Twisted, set this to a
    reactor instance (by default we "from twisted.internet import
    reactor" on the first call to call_later)
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úloop© r   r   ún/var/www/vedio/testing/chatpythonscript.ninositsolution.com/env/lib/python3.10/site-packages/txaio/__init__.pyr   &   s    r   )!Úwith_configÚusing_twistedÚusing_asyncioÚuse_twistedÚuse_asyncioÚconfigÚcreate_futureÚcreate_future_successÚcreate_future_errorÚcreate_failureÚ	as_futureÚ	is_futureÚrejectÚresolveÚcancelÚadd_callbacksÚgatherÚ	is_calledÚ
call_laterÚfailure_messageÚfailure_tracebackÚfailure_format_tracebackÚmake_batched_timerÚmake_loggerÚstart_loggingÚset_global_log_levelÚget_global_log_levelÚadd_log_categoriesr   r   ÚsleepÚtime_nsÚperf_counter_nsNc                  C   óN   t d urt dkrtd t ¡ƒ‚da ddlm}  t| ƒ dd l}d|_d|_d S )NÚtwistedúExplicitly using '{}' alreadyr   )ÚtxTF)Ú_explicit_frameworkÚRuntimeErrorÚformatÚtxaior/   Ú_use_frameworkr   r   )r/   r3   r   r   r   r   k   ó   
r   c                  C   r,   )NÚasyncior.   r   )ÚaioFT)r0   r1   r2   r3   r7   r4   r   r   )r7   r3   r   r   r   r   w   r5   r   c                 C   s2   ddl }tD ]}|dv rqt||t| |ƒƒ qdS )zc
    Internal helper, to set this modules methods to a specified
    framework helper-methods.
    r   N)r   r   )r3   Ú__all__ÚsetattrÚgetattr)Úmoduler3   Úmethod_namer   r   r   r4   ƒ   s   ýr4   )Ú_unframework)Útxaio._versionr   Útxaio.interfacesr   r   ÚversionÚobjectr   r8   r0   r   r   r4   r3   r=   r   r   r   r   Ú<module>   s   -