a
    -=ic,
                     @   s   d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z	 ddgiZ
g d	ZG d
d de	Zdd ZddefddZedd Zedd ZdS )z^
Thin wrappers around common functions.

Subpackages contain potentially unstable extensions.
    N)wraps   )tqdm)ObjectWrapperzgithub.com/Z	casperdcl)
tenumeratetziptmapc                       s2   e Zd ZdZ fddZd	ddZdd Z  ZS )
DummyTqdmFilez'Dummy file-like that will write to tqdmc                    s   t t| | g | _d S N)superr	   __init___buf)selfwrapped	__class__ f/home/droni/.local/share/virtualenvs/DPS-5Je3_V2c/lib/python3.9/site-packages/tqdm/contrib/__init__.pyr      s    zDummyTqdmFile.__init__Fc                 C   sn   t |trdnd}||\}}}|r^t| }tj|| j||g || j|d |g| _n| j	| d S )N   

)endfilenolock)

isinstancebytes
rpartitiontyper   writejoinr   _wrappedappend)r   xr   nlpreseppostblankr   r   r   r      s    

zDummyTqdmFile.writec              	   C   sP   | j rLt| j d  }ztj|| j || jd W n ttfyJ   Y n0 d S )Nr   )r   r   )r   r   r   r   r   r   OSError
ValueError)r   r&   r   r   r   __del__#   s    zDummyTqdmFile.__del__)F)__name__
__module____qualname____doc__r   r   r)   __classcell__r   r   r   r   r	      s   
r	   c                    s.   t jdd dk r*t  fdd}|S  S )z*Wraps `func()` output in a `list()` in py2N   )   c                     s   t  | i |S r
   )list)argskwargsfuncr   r   inner/   s    zbuiltin_iterable.<locals>.inner)sysversion_infor   )r5   r6   r   r4   r   builtin_iterable,   s
    r9   c                 K   sf   zddl }W n ty   Y n.0 t| |jrL||| fd|pB| ji|S t|| fd|i||S )z
    Equivalent of `numpy.ndenumerate` or builtin `enumerate`.

    Parameters
    ----------
    tqdm_class  : [default: tqdm.auto.tqdm].
    r   Ntotal)numpyImportErrorr   ZndarrayZndenumeratesize	enumerate)iterablestartr:   
tqdm_classtqdm_kwargsnpr   r   r   r   6   s    r   c                 o   s@   |  }|dt}t|| fi |g|R  D ]
}|V  q0dS )zr
    Equivalent of builtin `zip`.

    Parameters
    ----------
    tqdm_class  : [default: tqdm.auto.tqdm].
    rA   N)copypop	tqdm_autozip)Ziter1Z	iter2plusrB   r3   rA   ir   r   r   r   I   s    	 r   c                 o   s"   t |i |D ]}| | V  qdS )zr
    Equivalent of builtin `map`.

    Parameters
    ----------
    tqdm_class  : [default: tqdm.auto.tqdm].
    N)r   )function	sequencesrB   rH   r   r   r   r   X   s    	r   )r-   r7   	functoolsr   autor   rF   Zstdutilsr   
__author____all__r	   r9   r   r   r   r   r   r   r   <module>   s   


