HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/.local/lib/python3.10/site-packages/tqdm/__pycache__/utils.cpython-310.pyc
o

���g-.�@s�dZddlZddlZddlZddlmZmZmZddlm	Z	ddl
mZddlm
Z
ddlmZeeeef\ZZZZejZedd	�d
D��Zedd	�dD��Ze�d
�Zzer\ddlZne�WneyjdZYnwzej dd�Wn
e!y�e� �Ynwd6dd�Z"Gdd�de#�Z$Gdd�de#�Z%Gdd�de#�Z&Gdd�de&�Z'Gdd�de&�Z(Gdd�de&�Z)dd�Z*d d!�Z+d"d#�Z,d$d%�Z-d&d'�Z.d(d)�Z/d*d+�Z0d,d-�Z1d.d/�Z2d0d1�Z3d2d3�Z4d4d5�Z5dS)7z*
General helpers required for `tqdm.std`.
�N)�partial�
partialmethod�wraps)�	signature��east_asian_width)�warn��proxycc��|]}t�|�VqdS�N��CUR_OS�
startswith��.0�i�r�=/home/arjun/.local/lib/python3.10/site-packages/tqdm/utils.py�	<genexpr>��r)�win32�cygwinccrrr
rrrrrr)�aix�linux�darwin�freebsdz\x1b\[[;\d]*[A-Za-z]F)�stripcsN�duri�t�����fdd�tj��D��|rtnt����fdd�}|S)a
    Override parameter defaults via `os.environ[prefix + param_name]`.
    Maps UPPER_CASE env vars map to lower_case param names.
    camelCase isn't supported (because Windows ignores case).

    Precedence (highest first):

    - call (`foo(a=3)`)
    - environ (`FOO_A=2`)
    - signature (`def foo(a=1)`)

    Parameters
    ----------
    prefix  : str
        Env var prefix, e.g. "FOO_"
    types  : dict, optional
        Fallback mappings `{'param_name': type, ...}` if types cannot be
        inferred from function signature.
        Consider using `types=collections.defaultdict(lambda: ast.literal_eval)`.
    is_method  : bool, optional
        Whether to use `functools.partialmethod`. If (default: False) use `functools.partial`.

    Examples
    --------
    ```
    $ cat foo.py
    from tqdm.utils import envwrap
    @envwrap("FOO_")
    def test(a=1, b=2, c=3):
        print(f"received: a={a}, b={b}, c={c}")

    $ FOO_A=42 FOO_C=1337 python -c 'import foo; foo.test(c=99)'
    received: a=42, b=2, c=99
    ```
    Ncs,i|]\}}|���r|�d���|�qSr)r�lower�r�k�v)r�prefixrr�
<dictcomp>Is,zenvwrap.<locals>.<dictcomp>c
s�t|�j��fdd����D�}|D]S}�|}|j|jur?t|jd|jf�D]}z
|||�||<Wn	ty<Yq'wq|jdurPt|j�||�||<qz�|||�||<Wqt	yeYqw�|fi|��S)Ncsi|]\}}|�vr||�qSrrr��paramsrrr#O�z)envwrap.<locals>.wrap.<locals>.<dictcomp>�__args__)
r�
parameters�items�
annotation�empty�getattr�	Exception�default�type�KeyError)�func�	overridesr �param�typ)�
env_overrides�part�typesr$r�wrapLs*
��
�zenvwrap.<locals>.wrap)�len�os�environr)rr)r"r7�	is_methodr8r)r5rr6r"r7r�envwrap"s$r=c@s"eZdZdZddd�Zdd�ZdS)	�
FormatReplacezN
    >>> a = FormatReplace('something')
    >>> f"{a:5d}"
    'something'
    �cCs||_d|_dS�Nr)�replace�
format_called)�selfrArrr�__init__ls
zFormatReplace.__init__cCs|jd7_|jS)N�)rBrA)rC�_rrr�
__format__pszFormatReplace.__format__N)r?)�__name__�
__module__�__qualname__�__doc__rDrGrrrrr>fs
r>c@s@eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dS)�
Comparablez1Assumes child has self._comparable attr/@propertycCs|j|jkSr��_comparable�rC�otherrrr�__lt__w�zComparable.__lt__cCs||kp||kSrrrOrrr�__le__zszComparable.__le__cCs|j|jkSrrMrOrrr�__eq__}rRzComparable.__eq__cCs
||kSrrrOrrr�__ne__��
zComparable.__ne__cCs
||kSrrrOrrr�__gt__�rVzComparable.__gt__cCs
||kSrrrOrrr�__ge__�rVzComparable.__ge__N)
rHrIrJrKrQrSrTrUrWrXrrrrrLusrLc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�
ObjectWrappercCst|j|�Sr)r,�_wrapped�rC�namerrr�__getattr__�rRzObjectWrapper.__getattr__cCst|j||�Sr)�setattrrZ�rCr\�valuerrr�__setattr__�szObjectWrapper.__setattr__cCs,zt�||�WStyt||�YSw)z7Actual `self.getattr` rather than self._wrapped.getattr)�objectr]�AttributeErrorr,r[rrr�wrapper_getattr�s
�zObjectWrapper.wrapper_getattrcCst�|||�S)z7Actual `self.setattr` rather than self._wrapped.setattr)rbrar_rrr�wrapper_setattr�szObjectWrapper.wrapper_setattrcCs|�d|�dS)z4
        Thin wrapper around a given object
        rZN)re)rC�wrappedrrrrD�szObjectWrapper.__init__N)rHrIrJr]rardrerDrrrrrY�srYcs0eZdZdZ�fdd�Zdd�Zdd�Z�ZS)�SimpleTextIOWrapperz�
    Change only `.write()` of the wrapped object by encoding the passed
    value and passing the result to the wrapped object's `.write()` method.
    cst��|�|�d|�dS)N�encoding)�superrDre)rCrfrh��	__class__rrrD�szSimpleTextIOWrapper.__init__cCs|j�|�|�d���S)zP
        Encode `s` and pass to the wrapped object's `.write()` method.
        rh)rZ�write�encoderd)rC�srrrrl�szSimpleTextIOWrapper.writecC�|jt|d|�kS�NrZ�rZr,rOrrrrT��zSimpleTextIOWrapper.__eq__)rHrIrJrKrDrlrT�
__classcell__rrrjrrg�s
rgcs4eZdZdZedd��Z�fdd�Zdd�Z�ZS)�DisableOnWriteErrorzO
    Disable the given `tqdm_instance` upon `write()` or `flush()` errors.
    cst�����fdd�}|S)zV
        Quietly set `tqdm_instance.miniters=inf` if `func` raises `errno=5`.
        cs�z�|i|��WSty9}z%|jdkr�ztd��_Wn	ty&YnwWYd}~dSWYd}~dSd}~wtyj}z&dt|�vrG�ztd��_Wn	tyWYnwWYd}~dSWYd}~dSd}~ww)N��inf�closed)�OSError�errno�float�miniters�ReferenceError�
ValueError�str)�args�kwargs�e�r1�
tqdm_instancerr�inner�s2
�������z7DisableOnWriteError.disable_on_exception.<locals>.innerr	)r�r1r�rr�r�disable_on_exception�sz(DisableOnWriteError.disable_on_exceptioncsTt��|�t|d�r|�d|�||j��t|d�r(|�d|�||j��dSdS)Nrl�flush)rirD�hasattrrer�rlr�)rCrfr�rjrrrD�s
�
��zDisableOnWriteError.__init__cCrorprqrOrrrrT�rrzDisableOnWriteError.__eq__)	rHrIrJrK�staticmethodr�rDrTrsrrrjrrt�s
	rtcseZdZd�fdd�	Z�ZS)�CallbackIOWrapper�readcszt��|�t||��|dkr"t����fdd��}|�d|�dS|dkr9t����fdd��}|�d|�dStd��)	z{
        Wrap a given `file`-like object's `read()` or `write()` to report
        lengths to the given `callback`
        rlcs&�|g|�Ri|��}�t|��|Sr�r9)�datarr��res��callbackr1rrrl�sz)CallbackIOWrapper.__init__.<locals>.writer�cs�|i|��}�t|��|Srr�)rr�r�r�rrr��sz(CallbackIOWrapper.__init__.<locals>.readz Can only wrap read/write methodsN)rirDr,rrer0)rCr��stream�methodrlr�rjr�rrD�s
zCallbackIOWrapper.__init__)r�)rHrIrJrDrsrrrjrr��sr�cCsfzd�|�WdStyYdSty2z|���d�p#d|kWYSty1YYdSww)Nu█▉Fzutf-�U8T)rm�UnicodeEncodeErrorr-rr)rhrrr�_is_utf�s	���r�cCs"zt|j�WStyYdSw�NF)r�rhrc��fprrr�_supports_unicode
s
�r�cCs2t|t�r|D]}t|�dkrdSqdSt|�S)N�FT)�
isinstancer~�ordr�)rn�crrr�	_is_asciis
�r�cCs$d}trt}|durt}trt}|S)zy
    Return a function which returns console dimensions (width, height).
    Supported: linux, osx, windows, cygwin.
    N)�IS_WIN�_screen_shape_windows�_screen_shape_tput�IS_NIX�_screen_shape_linux)�
_screen_shaperrr�_screen_shape_wrappersr�cCs�zTddl}ddlm}m}ddlm}m}d}||krd}n||kr$d}|j�|�}|d�}|j�	||�}	|	rR|�
d|j�\}
}}}
}}}}}}}||||fWSWd	Sty^Yd	Sw)
Nr)�create_string_buffer�windll)�stdin�stdouti�i����i������hhhhHhhhhhh�NN)
�struct�ctypesr�r��sysr�r��kernel32�GetStdHandle�GetConsoleScreenBufferInfo�unpack�rawr-)r�r�r�r�r�r��	io_handle�h�csbir��_bufx�_bufy�_curx�_cury�_wattr�left�top�right�bottom�_maxx�_maxyrrrr�)s.����r�cs@zddl�ddlm���fdd�dD�WStyYdSw)zcygwin xterm (windows)rN)�
check_callcs&g|]}t���d|���d�qS)ztput rE)�int�splitr�r��shlexrr�
<listcomp>Fs�z&_screen_shape_tput.<locals>.<listcomp>)�cols�linesr�)r��
subprocessr�r-)rFrr�rr�As��r�cCs�zddlm}ddlm}ddlm}Wn
tyYdSwz|d|||d��dd�\}}||fWStyRz
d	d
�dD�WYSttfyQYYdSww)Nr)�array)�ioctl)�
TIOCGWINSZr�r�z�cSsg|]}ttj|�d�qS)rE)r�r:r;rrrrr�[r&z'_screen_shape_linux.<locals>.<listcomp>)�COLUMNS�LINES)	r��fcntlr��termiosr��ImportErrorr-r0r})r�r�r�r��rowsr�rrrr�Ms"�
��r�cs4tdtdd�t���sdSt���fdd��}|S)zd
    Return a function which returns console width.
    Supported: linux, osx, windows, cygwin.
    zQUse `_screen_shape_wrapper()(file)[0]` instead of `_environ_cols_wrapper()(file)`r�)�
stacklevelNcs�|�dSr@rr���shaperrr�ksz$_environ_cols_wrapper.<locals>.inner)r�DeprecationWarningr�r)r�rr�r�_environ_cols_wrapper`s�r�cCstjdkrtdurdSdS)N�ntr?z)r:r\�coloramarrrr�
_term_move_uprsr�cCstdd�t|�D��S)Ncss$�|]
}t|�dvrdndVqdS)�FWr�rENr)r�chrrrrws�"z_text_width.<locals>.<genexpr>)�sumr~)rnrrr�_text_widthvsr�cCstt�d|��S)zp
    Returns the real on-screen length of a string which may contain
    ANSI control codes and wide chars.
    r?)r��RE_ANSI�sub)r�rrr�disp_lenzsr�cCszt|�t|�kr|d|�Stt�|��}t|�|kr'|dd�}t|�|ks|r;tt�|��r;|�d�r7|S|dS|S)zB
    Trim a string which may contain ANSI control characters.
    N���z)r9r��boolr��search�endswith)r��length�ansi_presentrrr�	disp_trim�s�r�r�)6rKr:�rer��	functoolsrrr�inspectr�unicodedatar�warningsr�weakrefr
�range�chrr~�_range�_unich�_unicode�_basestring�platformr�anyr�r��compiler�r�r��init�	TypeErrorr=rbr>rLrYrgrtr�r�r�r�r�r�r�r�r�r�r�r�r�rrrr�<module>s\

���
D+