File: //usr/local/lib/python3.10/dist-packages/aiosignal/__pycache__/__init__.cpython-310.pyc
o
���gc � @ s( d dl mZ dZdZG dd� de�ZdS )� )�
FrozenListz1.3.2)�Signalc s4 e Zd ZdZdZ� fdd�Zdd� Zdd� Z� ZS ) 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 s t � �� || _d S )N)�super�__init__r )�self�owner�� __class__� �=/usr/local/lib/python3.10/dist-packages/aiosignal/__init__.pyr s
zSignal.__init__c C s d� | j| jt| ��S )Nz"<Signal owner={}, frozen={}, {!r}>)�formatr �frozen�list)r r r r �__repr__ s �zSignal.__repr__c � s2 �| j std��| D ]}||i |��I dH q
dS )z9
Sends data to all registered receivers.
zCannot send non-frozen signal.N)r �RuntimeError)r �args�kwargs�receiverr r r �send s ��zSignal.send) �__name__�
__module__�__qualname__�__doc__� __slots__r r r �
__classcell__r r r r r s r N)�
frozenlistr �__version__�__all__r r r r r �<module> s