+
    üÐj!	  ã                   óÆ   € R t ^ RIHtHt ^ RIHtHtHt ^ RIH	t	 ^ RI
HtHt ^ RIHt  ! R R]4      t ! R R	]4      t]! ]]4       ! R
 R4      4       tR R ltR R ltR# )zT
Plugin-based system for enumerating available reactors and installing one of
them.
)ÚIterableÚcast)Ú	AttributeÚ	InterfaceÚimplementer)ÚIReactorCore)ÚIPluginÚ
getPlugins)ÚnamedAnyc                   óV   a € ] tR t^t o Rt]! R4      t]! R4      tV 3R lR ltRt	V t
R# )ÚIReactorInstallerz:
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.
    c                ó   <€ V ^8„  d   QhRR/# ©é   ÚreturnN© )ÚformatÚ__classdict__s   "€Ú>/usr/lib/python3/dist-packages/twisted/application/reactors.pyÚ__annotate__ÚIReactorInstaller.__annotate__#   s   ø€ ÷ ñ �Tñ ó    c                 ó   € R# )z
Install this reactor.
Nr   r   r   r   ÚinstallÚIReactorInstaller.install#   s   ‚ r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Ú	shortNameÚdescriptionr   Ú__static_attributes__Ú__classdictcell__©r   s   @r   r   r      s6   ø‡ € ññ ð	ó€Iñ ð	ó€K÷ö r   r   c                   ó   € ] tR t^,tRtRtR# )ÚNoSuchReactorzL
Raised when an attempt is made to install a reactor which cannot be found.
r   N)r   r   r   r   r   r"   r   r   r   r&   r&   ,   s   † õr   r&   c                   óH   a € ] tR t^2t o RtV 3R lR ltV 3R lR ltRtV tR# )ÚReactorzp
@ivar moduleName: The fully-qualified Python name of the module of which
the install callable is an attribute.
c                ó,   <€ V ^8„  d   QhRS[ RS[ RS[ /# )r   r    Ú
moduleNamer!   )Ústr)r   r   s   "€r   r   ÚReactor.__annotate__9   s"   ø€ ÷ 'ñ '¡#ð '±3ð 'ÁSñ 'r   c                ó*   € Wn         W n        W0n        R # ©N)r    r*   r!   )Úselfr    r*   r!   s   &&&&r   Ú__init__ÚReactor.__init__9   s   € Ø"ŒØ$ŒØ&Ör   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r,   >   s   ø€ ÷ ,ñ ,˜ñ ,r   c                óL   € \        V P                  4      P                  4        R # r.   )r
   r*   r   )r/   s   &r   r   ÚReactor.install>   s   € Ü�—‘Ó!×)Ñ)Ö+r   )r!   r*   r    N)	r   r   r   r   r   r0   r   r"   r#   r$   s   @r   r(   r(   2   s   ø‡ € ñ÷
'ð '÷
,ö ,r   r(   c                ó:   € V ^8„  d   QhR\         \        ,          /# )r   r   )r   r   )r   s   "r   r   r   B   s   € ÷ )ñ )œÔ"3Õ4ñ )r   c                 ó    € \        \        4      # )z5
Return an iterator of L{IReactorInstaller} plugins.
)r	   r   r   r   r   ÚgetReactorTypesr7   B   s   € ô Ô'Ó(Ð(r   c                ó0   € V ^8„  d   QhR\         R\        /# )r   r    r   )r+   r   )r   s   "r   r   r   I   s   € ÷ #ñ #œcð #¤lñ #r   c                ó¬   € \        4        F<  pVP                  V 8X  g   K  TP                  4        ^ RIHp \        \        V4      u # 	  \        V 4      h)zÙ
Install the reactor with the given C{shortName} attribute.

@raise NoSuchReactor: If no reactor is found with a matching C{shortName}.

@raise Exception: Anything that the specified reactor can raise when installed.
)Úreactor)r7   r    r   Útwisted.internetr:   r   r   r&   )r    Ú	installerr:   s   &  r   ÚinstallReactorr=   I   sH   € ô %Ö&ˆ	Ø×Ñ )Ö+Ø×ÑÔÝ0äœ gÓ.Ò.ñ 'ô ˜	Ó
"Ð"r   N)r   Útypingr   r   Úzope.interfacer   r   r   Útwisted.internet.interfacesr   Útwisted.pluginr   r	   Útwisted.python.reflectr
   r   ÚKeyErrorr&   r(   r7   r=   r   r   r   Ú<module>rD      sa   ðñ
÷ "ç <Ñ <å 4ß .Ý +ô˜	ô ô4�Hô ñ ˆWÐ'Ó(÷,ð ,ó )ð,õ)÷#r   