o
    ž<[a#  ã                   @   s8   d Z ddlZddlmZ e ¡ Zeƒ ZG dd„ dƒZdS )zEvent loop mixins.é    Né   )Úeventsc                   @   s&   e Zd ZdZedœdd„Zdd„ ZdS )Ú_LoopBoundMixinN)Úloopc                C   s"   |t urtdt| ƒj› dƒ‚d S )Nz2As of 3.10, the *loop* parameter was removed from z"() since it is no longer necessary)Ú_markerÚ	TypeErrorÚtypeÚ__name__©Úselfr   © r   ú,/var/www/Python-3.10.0/Lib/asyncio/mixins.pyÚ__init__   s   ÿÿÿz_LoopBoundMixin.__init__c                 C   sb   t  ¡ }| jd u r#t | jd u r|| _W d   ƒ n1 sw   Y  || jur/t| ›dƒ‚|S )Nz# is bound to a different event loop)r   Ú_get_running_loopÚ_loopÚ_global_lockÚRuntimeErrorr
   r   r   r   Ú	_get_loop   s   

€þ
z_LoopBoundMixin._get_loop)r	   Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   r      s    r   )	Ú__doc__Ú	threadingÚ r   ÚLockr   Úobjectr   r   r   r   r   r   Ú<module>   s    