File: //opt/cloudlinux/venv/lib64/python3.11/site-packages/aiosignal/__pycache__/__init__.cpython-311.pyc
�
    � hc  �                   �6   � d dl mZ dZdZ G d� de�  �        ZdS )�    )�
FrozenListz1.3.1)�Signalc                   �2   � � e Zd ZdZdZ� fd�Zd� Zd� Z� xZS )r   z�Coroutine-based signal implementation.
    To connect a callback to a signal, use any list method.
    Signals are fired using the send() coroutine, which takes named
    arguments.
    )�_ownerc                 �V   �� t          �   �         �                    �   �          || _        d S )N)�super�__init__r   )�self�owner�	__class__s     ��G/opt/cloudlinux/venv/lib/python3.11/site-packages/aiosignal/__init__.pyr	   zSignal.__init__   s$   �� �
�������������    c                 �^   � d�                     | j        | j        t          | �  �        �  �        S )Nz"<Signal owner={}, frozen={}, {!r}>)�formatr   �frozen�list)r
   s    r
   �__repr__zSignal.__repr__   s+   � �3�:�:��K���d�4�j�j�
� 
� 	
r   c              �   �\   K  � | j         st          d�  �        �| D ]} ||i |��� d{V �� �dS )z9
        Sends data to all registered receivers.
        zCannot send non-frozen signal.N)r   �RuntimeError)r
   �args�kwargs�receivers       r
   �sendzSignal.send   se   � � � � �{� 	A��?�@�@�@�� 	,� 	,�H��(�D�+�F�+�+�+�+�+�+�+�+�+�+�	,� 	,r   )	�__name__�
__module__�__qualname__�__doc__�	__slots__r	   r   r   �
__classcell__)r   s   @r
   r   r      sg   �� � � � � �� � �I�� � � � �
� 
� 
�
,� ,� ,� ,� ,� ,� ,r   r   N)�
frozenlistr   �__version__�__all__r   � r   r
   �<module>r$      sU   �� !� !� !� !� !� !���
��,� ,� ,� ,� ,�Z� ,� ,� ,� ,� ,r