File: //home/arjun/.local/lib/python3.10/site-packages/tqdm/__pycache__/asyncio.cpython-310.pyc
o
���g�
� @ sZ d Z ddlZddlmZ ddlmZ ddgiZg d�ZG d d
� d
e�Z dd� Z
e Ze
ZdS )
z�
Asynchronous progressbar decorator for iterators.
Includes a default `range` iterator printing to `stderr`.
Usage:
>>> from tqdm.asyncio import trange, tqdm
>>> async for i in trange(10):
... ...
� N)�version_info� )�tqdmzgithub.com/� casperdcl)�tqdm_asyncio�taranger �trangec sf e Zd ZdZd� fdd� Zdd� Zdd� Zd d
� Zedddd�dd
��Z edddd�dd��Z
� ZS )r z0
Asynchronous-friendly version of tqdm.
Nc sv t � j|g|�R i |�� d| _|d ur9t|d�r"|j| _d| _d S t|d�r-|j| _d S t|�| _| jj| _d S d S )NF� __anext__T�__next__) �super�__init__�iterable_awaitable�hasattrr �
iterable_nextr
�iter�iterable_iterator)�self�iterable�args�kwargs�� __class__� �?/home/arjun/.local/lib/python3.10/site-packages/tqdm/asyncio.pyr s
�ztqdm_asyncio.__init__c C s | S �Nr )r r r r � __aiter__$ s ztqdm_asyncio.__aiter__c � s` �z| j r
| �� I d H }n| �� }| �� |W S ty$ | �� t� ty/ | �� � w r )r
r �update�
StopIteration�close�StopAsyncIteration�
BaseException)r �resr r r r '