HEX
Server: LiteSpeed
System: Linux kapuas.iixcp.rumahweb.net 5.14.0-427.42.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Nov 1 14:58:02 EDT 2024 x86_64
User: mirz4654 (1666)
PHP: 8.1.33
Disabled: system,exec,escapeshellarg,escapeshellcmd,passthru,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,shell_exec,popen,pclose,dl,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setsid,posix_setuid,posix_setpgid,ini_alter,show_source,define_syslog_variables,symlink,syslog,openlog,openlog,closelog,ocinumcols,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dll,ftp,myshellexec,socket_bind,mail,posix_getwpuid
Upload Files
File: //usr/lib/python3.9/site-packages/redis/asyncio/__pycache__/retry.cpython-39.pyc
a

��b��@snddlmZddlmZmZmZmZmZmZm	Z	ddl
mZmZm
Z
erTddlmZe	d�ZGdd�d�ZdS)	�)�sleep)�
TYPE_CHECKING�Any�	Awaitable�Callable�Tuple�Type�TypeVar)�ConnectionError�
RedisError�TimeoutError)�AbstractBackoff�Tc@sbeZdZdZdZeeffdeee	e
dfd�dd�Zege
efee
gefed�d	d
�ZdS)�Retryz0Retry a specific number of times after a failure��_backoff�_retries�_supported_errorsr
.)�backoff�retries�supported_errorscCs||_||_||_dS)a'
        Initialize a `Retry` object with a `Backoff` object
        that retries a maximum of `retries` times.
        `retries` can be negative to retry forever.
        You can specify the types of supported errors which trigger
        a retry with the `supported_errors` parameter.
        Nr)�selfrrr�r�7/usr/lib/python3.9/site-packages/redis/asyncio/retry.py�__init__szRetry.__init__)�do�fail�returnc
�s�|j��d}z|�IdHWS|jy�}z\|d7}||�IdH|jdkr\||jkr\|�|j�|�}|dkr~t|�IdHWYd}~qd}~00qdS)a&
        Execute an operation that might fail and returns its result, or
        raise the exception that was thrown depending on the `Backoff` object.
        `do`: the operation to call. Expects no argument.
        `fail`: the failure handler, expects the last error that was thrown
        rN�)r�resetrrZcomputer)rrrZfailures�errorrrrr�call_with_retry&s	
zRetry.call_with_retryN)�__name__�
__module__�__qualname__�__doc__�	__slots__r
r�intrrrrrrrrr!rrrrr
s����rN)Zasyncior�typingrrrrrrr	Zredis.exceptionsr
rrZ
redis.backoffr
rrrrrr�<module>s$