o
    DD©ië  ã                   @   s„   d dl Z d dlmZmZ d dlmZ d dlmZmZm	Z	m
Z
 e jdkr*d dlmZ nd dlmZ e
dƒZedƒZG d	d
„ d
eƒZdS )é    N)ÚExecutorÚFuture)ÚTracebackType)ÚCallableÚOptionalÚTypeÚTypeVar)é   é
   )Ú	ParamSpecÚReturnÚParamsc                	   @   sn   e Zd ZdZdeeef dejdejde	e fdd„Z
ddd	„Zd
eee  dee dee ddfdd„ZdS )ÚDummyExecutorzC
    Synchronous dummy `concurrent.futures.Executor` analogue.
    ÚfnÚargsÚkwargsÚreturnc             
   O   sV   t ƒ }z||i |¤Ž}| |¡ W |S  ty* } z| |¡ W Y d }~|S d }~ww ©N)r   Ú
set_resultÚ	ExceptionÚset_exception)Úselfr   r   r   ÚfutureÚresultÚexc© r   úS/var/www/Datamplify/venv/lib/python3.10/site-packages/libcst/codemod/_dummy_pool.pyÚsubmit   s   þ€þzDummyExecutor.submitc                 C   s   | S r   r   )r   r   r   r   Ú	__enter__(   s   zDummyExecutor.__enter__Úexc_typeÚexc_valÚexc_tbNc                 C   s   d S r   r   )r   r   r    r!   r   r   r   Ú__exit__+   s   zDummyExecutor.__exit__)r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r   r   r   ÚBaseExceptionr   r"   r   r   r   r   r      s*    
þüû
ú

þýüûr   )ÚsysÚconcurrent.futuresr   r   Útypesr   Útypingr   r   r   r   Úversion_infor   Útyping_extensionsr   r   r   r   r   r   r   Ú<module>   s   
