File: //lib/python3/dist-packages/twisted/application/__pycache__/reactors.cpython-310.pyc
o
�b! � @ s� d Z ddlmZmZ ddlmZmZmZ ddlm Z ddl
mZmZ ddl
mZ G dd� de�ZG d d
� d
e�Zeee�G dd� d��Zd
ee fdd�Zded
e fdd�ZdS )zT
Plugin-based system for enumerating available reactors and installing one of
them.
� )�Iterable�cast)� Attribute� Interface�implementer)�IReactorCore)�IPlugin�
getPlugins)�namedAnyc @ s* e Zd ZdZed�Zed�Zddd�ZdS ) �IReactorInstallerzB
Definition of a reactor which can probably be installed.
zE
A brief string giving the user-facing name of this reactor.
zK
A longer string giving a user-facing description of this reactor.
�returnNc C s dS )z'
Install this reactor.
N� r
r
r
�>/usr/lib/python3/dist-packages/twisted/application/reactors.py�install# s zIReactorInstaller.install�r N)�__name__�
__module__�__qualname__�__doc__r � shortName�descriptionr r
r
r
r r s ��r c @ s e Zd ZdZdS )�
NoSuchReactorzT
Raised when an attempt is made to install a reactor which cannot be found.
N)r r r r r
r
r
r r , s r c @ s0 e Zd ZdZdededefdd�Zdd d
�ZdS )�Reactorz|
@ivar moduleName: The fully-qualified Python name of the module of which
the install callable is an attribute.
r �
moduleNamer c C s || _ || _|| _d S �N)r r r )�selfr r r r
r
r �__init__9 s
zReactor.__init__r Nc C s t | j��� d S r )r
r r )r r
r
r r >