
    tfc                        d Z ddlmZ ddlmZ ddlmZ  G d de      Zg dZ	 ddlm	Z
  G d	 d
e
      Z	ej                  d
       	 ddlmZ  G d de      Zej                  d       	 ddlmZ  G d de      Zej                  d       	 ddlmZ  G d de      Zej                  d       y# e$ r Y qw xY w# e$ r Y Yw xY w# e$ r Y Aw xY w# eef$ r Y yw xY w)aN  
pyee supplies a `EventEmitter` class that is similar to the
`EventEmitter` class from Node.js. In addition, it supplies the subclasses
`AsyncIOEventEmitter`, `TwistedEventEmitter` and `ExecutorEventEmitter`
for supporting async and threaded execution with asyncio, twisted, and
concurrent.futures Executors respectively, as supported by the environment.

# Example

```text
In [1]: from pyee.base import EventEmitter

In [2]: ee = EventEmitter()

In [3]: @ee.on('event')
   ...: def event_handler():
   ...:     print('BANG BANG')
   ...:

In [4]: ee.emit('event')
BANG BANG

In [5]:
```

    )warn)EventEmitter)PyeeExceptionc                   "     e Zd ZdZ fdZ xZS )BaseEventEmitterzG
    BaseEventEmitter is deprecated and an alias for EventEmitter.
    c                 R    t        t        d             t        t        |           y )Nz|pyee.BaseEventEmitter is deprecated and will be removed in a future major version; you should instead use pyee.EventEmitter.)r   DeprecationWarningsuperr   __init__self	__class__s    W/var/www/html/software/conda/envs/higlass/lib/python3.12/site-packages/pyee/__init__.pyr   zBaseEventEmitter.__init__)   s)    R	
 	.0    __name__
__module____qualname____doc__r   __classcell__r   s   @r   r   r   $   s    1 1r   r   )r   r   r   )AsyncIOEventEmitterc                   $     e Zd ZdZd fd	Z xZS )r   zP
        AsyncIOEventEmitter has been moved to the pyee.asyncio module.
        c                 V    t        t        d             t        t        |   |       y )NzCpyee.AsyncIOEventEmitter has been moved to the pyee.asyncio module.)loop)r   r	   r
   r   r   )r   r   r   s     r   r   zAsyncIOEventEmitter.__init__>   s-    " %t545@r   Nr   r   s   @r   r   r   9   s    		A 	Ar   r   )TwistedEventEmitterc                   "     e Zd ZdZ fdZ xZS )r   zP
        TwistedEventEmitter has been moved to the pyee.twisted module.
        c                 R    t        t        d             t        t        |           y )NzCpyee.TwistedEventEmitter has been moved to the pyee.twisted module.)r   r	   r
   r   r   r   s    r   r   zTwistedEventEmitter.__init__S   s(    " %t57r   r   r   s   @r   r   r   N   s    		8 	8r   r   )ExecutorEventEmitterc                   $     e Zd ZdZd fd	Z xZS )r    zR
        ExecutorEventEmitter has been moved to the pyee.executor module.
        c                 V    t        t        d             t        t        |   |       y )NzEpyee.ExecutorEventEmitter has been moved to the pyee.executor module.)executor)r   r	   r
   r    r   )r   r#   r   s     r   r   zExecutorEventEmitter.__init__h   s-    " &66Ir   r   r   r   s   @r   r    r    c   s    		J 	Jr   r    )TrioEventEmitterc                   $     e Zd ZdZd fd	Z xZS )r$   zJ
        TrioEventEmitter has been moved to the pyee.trio module.
        c                 X    t        t        d             t        t        |   ||       y )Nz=pyee.TrioEventEmitter has been moved to the pyee.trio module.)nurserymanager)r   r	   r
   r$   r   )r   r'   r(   r   s      r   r   zTrioEventEmitter.__init__}   s-    "S "D27G2Tr   )NNr   r   s   @r   r$   r$   x   s    		U 	Ur   r$   N)r   warningsr   	pyee.baser   r   r   __all__pyee.asyncior   _AsyncIOEventEmitterappendImportErrorpyee.twistedr   _TwistedEventEmitterpyee.executorr    _ExecutorEventEmitter	pyee.trior$   _TrioEventEmitterSyntaxError r   r   <module>r8      s  6  2 #1| 1  @	HA2 A NN()	H82 8 NN()	KJ4 J NN)*	?U, U NN%&}  		*  		*  		* 	[! 		sG   "B1 "B< +"C "C 1B98B9<CCCCCC