U
    Ïvagƒ  ã                   @   s†   d dl Z d dlZd dlmZ e jd Zeedœdd„Zeedœdd„Z	ej
d	ejf ed
œdd„Zejeeef Zeedœdd„ZdS )é    N)Ú	timedeltaé   )Úpos_numÚreturnc                 C   s\   | dkrdS | dkrdS | dkr$dS | dkr0dS d	|   krDd
krLn ndS t | d ƒS d S )Nr   Úthé   Ústr   Úndé   Úrdé   é   é
   ©Úfind_ordinal©r   © r   úO/var/www/html/myvenv/lib/python3.8/site-packages/pip/_vendor/tenacity/_utils.pyr      s    r   c                 C   s   | › t | ƒ› �S ©Nr   r   r   r   r   Ú
to_ordinal+   s    r   .)Úcbr   c                 C   s˜   g }z|  | j¡ W n: tk
rN   z|  | j¡ W n tk
rH   Y nX Y nX |s\t| ƒS z| jrr| d| j¡ W n tk
rˆ   Y nX d |¡S dS )znGet a callback fully-qualified name.

    If no name can be produced ``repr(cb)`` is called and returned.
    r   Ú.N)ÚappendÚ__qualname__ÚAttributeErrorÚ__name__ÚreprÚ
__module__ÚinsertÚjoin)r   Úsegmentsr   r   r   Úget_callback_name/   s     r!   )Ú	time_unitr   c                 C   s   t t| tƒr|  ¡ n| ƒS r   )ÚfloatÚ
isinstancer   Útotal_seconds)r"   r   r   r   Ú
to_secondsK   s    r&   )ÚsysÚtypingÚdatetimer   ÚmaxsizeZMAX_WAITÚintÚstrr   r   ÚCallableÚAnyr!   ÚUnionr#   Útime_unit_typer&   r   r   r   r   Ú<module>   s   
