o
    ä$<fg  ã                   @   sB   d dl Z d dlZejrd dlZdeddfdd„ZG dd„ dƒZdS )é    NÚsecondsÚreturnc                 C   s   t  | ¡ dS )z˜
    Sleep strategy that delays execution for a given number of seconds.

    This is the default strategy, and may be mocked out for unit testing.
    N)ÚtimeÚsleep)r   © r   ú,lib/python3.10/site-packages/tenacity/nap.pyr      s   r   c                   @   s2   e Zd ZdZddd„Zdeje ddfd	d
„ZdS )Úsleep_using_eventz0Sleep strategy that waits on an event to be set.Úeventúthreading.Eventr   Nc                 C   s
   || _ d S )N)r	   )Úselfr	   r   r   r   Ú__init__%   s   
zsleep_using_event.__init__Útimeoutc                 C   s   | j j|d d S )N)r   )r	   Úwait)r   r   r   r   r   Ú__call__(   s   zsleep_using_event.__call__)r	   r
   r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ÚtypingZOptionalÚfloatr   r   r   r   r   r   "   s    
r   )r   r   ZTYPE_CHECKINGZ	threadingr   r   r   r   r   r   r   Ú<module>   s   	