o
    Df                     @  sl   d Z ddlmZ ddlmZmZmZ ddlmZ dd Z	dd Z
d	d
 Zdd Zdd Zdd Zdd ZdS )zEvent-loop debugging tools.    )annotations)ERRREADWRITE)reprcallc                 C  s4   d | t@ rdnd| t@ rdnd| t@ rdS dS )z&Return description of event loop flag.z{}{}{}R W!)formatr   r   r   )flag r   Q/home/ubuntu/webapp/venv/lib/python3.10/site-packages/kombu/asynchronous/debug.py	repr_flag	   s   
r   c                 C  s@   | d u rdS t | tr| S t | tr| \}}t|j|dS | jS )Nz	<missing>)args)
isinstancestrtupler   __name__)objcbr   r   r   r   _rcb   s   

r   c                 C  s   d t| t|  S )z1Return description of active readers and writers., )joinrepr_readersrepr_writershr   r   r   repr_active   s   r   c                   s   d  fdd|D S )z.Return description of events returned by poll.r   c              	   3  s4    | ]\}}d  tt ||d|t|V  qdS )z
{}({})->{}z(GONE)N)r   r   callback_forr   ).0fdflr   r   r   	<genexpr>"   s    
zrepr_events.<locals>.<genexpr>)r   )r   eventsr   r   r   repr_events    s   r%   c                 C     dd | j  D S )z&Return description of pending readers.c              
   S  s2   g | ]\}}d | dt | dtttB  qS ()z->)r   r   r   r   r    r!   r   r   r   r   
<listcomp>-   s    &z repr_readers.<locals>.<listcomp>)readersitemsr   r   r   r   r   +      r   c                 C  r&   )z&Return description of pending writers.c              	   S  s.   g | ]\}}d | dt | dtt qS r'   )r   r   r   r*   r   r   r   r+   3   s    "z repr_writers.<locals>.<listcomp>)writersr-   r   r   r   r   r   1   r.   r   c                 G  sb   z |t @ r| j| W S |t@ r|| jv r| jW S | j| W S W dS  ty0   |r/|d  Y S  w )z)Return the callback used for hub+fd+flag.r   N)r   r,   r   consolidateconsolidate_callbackr/   KeyError)r   r!   r   defaultr   r   r   r   7   s   
r   N)__doc__
__future__r   kombu.utils.eventior   r   r   kombu.utils.functionalr   r   r   r   r%   r   r   r   r   r   r   r   <module>   s    