
    ue                     .    d dl Z  G d d          Zd ZdS )    Nc                        e Zd Zd Zd Zd ZdS )Timerc                 x    || _         || _        t          j        |                                           | _        d S N)_timeout	_callbackasyncioensure_future_job_task)selftimeoutcallbacks      6lib/python3.11/site-packages/pydeck/widget/debounce.py__init__zTimer.__init__   s.    !*499;;77


    c                 p   K   t          j        | j                   d {V  |                                  d S r   )r	   sleepr   r   r   s    r   r   z
Timer._job
   s@      mDM*********r   c                 8    | j                                          d S r   )r   cancelr   s    r   r   zTimer.cancel   s    
r   N)__name__
__module____qualname__r   r   r    r   r   r   r      sA        8 8 8
      r   r   c                       fd}|S )Nc                      d  fd}|S )Nc                  f      fd}                                  t          |          d S )Nc                        i  d S r   r   )argsfnkwargss   r   call_itz?debounce.<locals>.decorator.<locals>.debounced.<locals>.call_it   s    D#F#####r   )r   r   )r    r"   r#   r!   timerwaits   `` r   	debouncedz.debounce.<locals>.decorator.<locals>.debounced   sP    $ $ $ $ $ $ $  $((EEEr   r   )r!   r&   r$   r%   s   ` @r   	decoratorzdebounce.<locals>.decorator   s5    	) 	) 	) 	) 	) 	) 	) r   r   )r%   r'   s   ` r   debouncer(      s$         r   )r	   r   r(   r   r   r   <module>r)      sO               r   