File: //opt/alt/python37/lib/python3.7/site-packages/aiosignal/__pycache__/__init__.cpython-37.pyc
B
��jae � @ s( d dl mZ dZdZG dd� de�ZdS )� )�
FrozenListz1.2.0a0)�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__� �C/opt/alt/python37/lib/python3.7/site-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 � s0 | j std��x| D ]}|||�I dH qW dS )z9
Sends data to all registered receivers.
zCannot send non-frozen signal.N)r
�RuntimeError)r �args�kwargsZreceiverr
r
r �send s
zSignal.send) �__name__�
__module__�__qualname__�__doc__� __slots__r r r �
__classcell__r
r
)r r r s
r N)Z
frozenlistr �__version__�__all__r r
r
r
r �<module> s